본문 바로가기

Develop/Java41

print vs printf vs println System.out.print(); 괄호 안에 들어있는 내용을 그대로 출력한다. 개행문자(줄바꿈문자)를 포함하지 않는다. System.out.printf(); %d, %f 등 서식이 있는 출력을 위해 사용한다. 마찬가지로, 개행문자를 포함하지 않는다. System.out.println(); 괄호 안의 내용을 그대로 출력한다. 개행문자가 포함되어 자동으로 줄바꿈이 된다. 다음은, 세 구문을 비교해서 결과를 나타낸 것이다. 차이점을 바로 알아보자. 다음 결과와 같이 println은 개행문자가 포함되어 콘솔 창에 한 줄 띄워진 것을 알 수 있다. (마지막 System.out.println 구문은 개행문자가 진짜 포함되어 적용이 되는지 쳐본 것이다.) 원래는 System.out.println() 밖에 알지 못했.. 2022. 8. 24.
Interface Interface 내에 메서드를 나타낼 때는 무조건 추상 메서드를 사용한다. public abstract void method(); 여기서, public abstract는 생략 가능하다. 2022. 7. 9.
return null; return null;은 리턴하는 값의 타입이 객체라는 뜻이다. 아무것도 없게 반환하되, 그 타입은 객체로 해주고 싶을 때 사용한다. 2022. 7. 9.
외부에서 객체를 받는 매개변수 왼쪽은 Student 클래스, 오른쪽은 Bus 클래스이다. 왼쪽 클래스의 13번째 줄을 보면, Bus bus , bus.take 처럼 특이한 모양의 메소드 구현법이 있다. 여기서는 Student 클래스의 입장에서 봤을 때, 외부에서 만들어진 Bus 객체를 이용해 bus라는 매개변수를 선언했다. 결국, Bus 객체를 받은 것이다. 이렇게 되면 Bus 클래스의 메서드들을 사용할 수 있게 된다. 여기서는 bus라는 매개변수를 인자로 받아서 Bus 객체의 take 메서드를 호출한 것이다. 이런 메서드 구현법도 있으니 알아둘 것. 2022. 6. 28.
Scanner로 입력받을 시, nextInt() 후 nextLine() 안되는 이유 일단 nextInt()는 입력받는 것이 숫자인 경우, nextLine()은 입력받는 것이 문자열인 경우 사용된다. nextLine() -> nextInt() 의 순서로 사용하면 문제 없다. 그러나, nextInt() -> nextLine() 의 순서로 사용하면 nextLine()의 입력을 받지 않는다. 그 이유는 nextInt()는 숫자를 입력하고 난 뒤, 치게 되는 엔터(개행문자)를 제거해주지 않기 때문에 그 엔터가 nextLine()의 입력값에 들어가기 때문이다. 해결방법은 nextInt()의 구문 마지막에 scanner.nextLine()을 넣어주면 된다. 예시 ) 2022. 6. 27.