2021-03-29 문제 상근이는 보통 사람들이 사는 것과는 조금 다른 삶을 사는 사람이다. 상근이는 이런 사람들의 시선이 부담스럽기 때문에, 자신만의 숫자를 개발하기로 했다. 바로 그 이름은 팩토리얼 진법이다. 팩토리얼 진법은 각 자리에 올 수 있는 숫자는 0부터 9까지로 10진법과 거의 비슷하다. 하지만, 읽는 법은 조금 다르다. 팩토리얼 진법에서는 i번 자리의 값을 ai×i!로 계산한다. 즉, 팩토리얼 진법에서 719는 10진법에서 53과 같다. 그 이유는 7×3! + 1×2! + 9×1! = 53이기 때문이다. 팩토리얼 진법으로 작성한 숫자가 주어졌을 때, 10진법으로 읽은 값을 구하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루..
2021-03-07 - Call By Value 바로 결론부터 말하자면 자바는 Call By Value와 같은 특징을 가지고 있다. 아래의 코드를 보자. package StringCallByValue; public class Main { public static void stringSwap1(String str1, String str2) { String temp = str1; str1 = str2; str2 = temp; } //String 변수 2개를 전달받아 swap 해주는 간단한 메서드 선언 public static void main(String[] args) { String str1 = "aaa"; String str2 = "bbb"; System.out.println(str1 + " / " + ..
2021-03-06 -정의 InputStream과 OutPutStream모두 스트림 클래스의 최상위 클래스로 모두 추상 클래스이다. 때문에 자신의 new 연산자로 는 객체를 생성할 수 없으며, 자식 클래스 및 System 객체 자체를 매개 값으로 받아야 한다. (전체 코드는 게시물 맨 아래에 올려두었다.) - 선언 InputStream is = System.in; OutputStream os = System.out; byte [] checkByte = new byte [100]; int size = -1; // 입력된 데이터가 더이상 있는지 여부를 체크할 // size 변수 -1일 경우 더 이상의 데이터가 없다. 선언부에서는 입력/출력 스트림을 모두 System.in /. out를 매개 값으로 받아 객체..
2021-03-01 - 정의 Reader는 FileReader / BufferedReader / InputStreamReader의 최상위 클래스이다. 오늘은 문자열 스트림을 받아들이는 이 Reader(문자열 기반 스트림 최상위 클래스) 클래스에 대하여 알아보도록 하자. - 특징 Reader reader = System.in; 기존의 inputstream은 System.in을 매개 값으로 받아 객체를 생성할 수 있었다. 하지만 Reader 클래스의 경우 문자열 스트림이기 때문에 직접적으로 inputstream을 받아들일 수 없고 반드시 문자열 스트림 타입으로 변환된 자식 클래스를 받아들여야지 객체가 생성된다. ( Reader 역시 추상 클래스이기 때문에 자기 자신을 new 연산자를 통해 객체를 생성할 수 ..
2021-02-25 - 정의 모든 출력 스트림의 최상위 클래스로 모든 바이트 기반의 입력 스트림은 OutputStream을 상속받아 사용한다. 자바 API에서의 정의는 아래와 같다. This abstract class is the superclass of all classes representing an output stream of bytes. An output stream accepts output bytes and sends them to some sink. Applications that need to define a subclass of OutputStream must always provide at least a method that writes one byte of output. 이 추상 클..
2021-02-21 모든 입력 스트림의 최상위 클래스로 모든 바이트 기반의 입력 스트림은 InputStream을 상속받아 사용한다. 자바 API에서의 정의는 아래와 같다. - 출처 : java API ( 글의 내용의 바탕은 API 기준으로 작성되었다.) This abstract class is the superclass of all classes representing an input stream of bytes. Applications that need to define a subclass of InputStream must always provide a method that returns the next byte of input. ( 이 추상 클래스는 바이트의 입력 스트림을 나타내는 모든 클래스의 슈..