Ch2. Console Input and Output
System.out.println
System.out →Console 출력 객체 (object)
println → console output 매서드(method)
print vs println
-print 매서드는 println과 다르게 줄바꿈을 포함하지 않음(개행문자 포함x)
→ println 의 다음 output은 새로운 줄에 출력, print의 경우 해당 줄에 그대로 이어서 출력
Printf
java에서의 printfsms C언어에서의 printf와 매우 유사하다.
System.out.printf는 여러 인자(argument)를 가질 수 있다.
첫번째 인수는 항상 format string이다.
첫 번째를 제외한 모든 인수는 화면에 출력되는 값
ex)
%6.2f → 6자리로 맞춤 (앞에서 부터 공백으로 채움) , 소수점 2번째자리까지 출력
%-8.2fEnd → “-”부호를 사용하여 왼쪽 정렬로 8자리수를 채우고(빈칸으로 채움) 소수점 2번째 자리까지 출력
Importing Packages and Classes
-JAVA의 라이브러리를 packages라고 한다.
-package는 class들의 모음으로 프로그램 접근이 용이하도록 한다.
-해당 package의 class를 사용하기 위해 import 문을 작성해야 한다.
ex)
import java.text.NumberFormat; → NumberFormat 클래스만 import
import java.text.*; → java.text 패키지에 있는 모든 클래스 import
*java.lang 패키지의 class는 자동적으로 모든 Java 프로그램에 import 된다.
Scanner Class
-keyboard의 입력을 받기 위해 Scanner Class를 포함한다.(Java 5.0 이상)
Scanner 클래스 사용을 위한 import → import java.util.Scanner (java.util 패키지에서 Scanner 클래스를 찾아 import)
ex)
Scanner keyboard = new Scanner(System.in);
->keyboar라는 이름의 Scanner 클래스 객체를 생성, system.in은 키보드 입력을 처리하는 객체
->Scanner 객체가 생성된 후 객체를 사용하여 키보드 입력을 수행
nextInt(), nextDouble()
-nextInt 매서드는 하나의 int값을 변수에 할당
-nextDouble 매서드는 하나의 double형 값을 변수에 할당
-다수의 입력은 whitespac(공백)으로 구분되어야 하며 적절한 매서드의 호출로 읽혀야 함
next()
-next()매서드는 공백이 아닌 하나의 string형을 읽음
ex)
String word1 = keyboard.next();
String word2 = keyboard.next();
input = jelly beans
=> word1 = jelly, word2 = beans
nextLine()
-nextLine 매서드는 keyboard 입력 전체를 읽음
nextLine이 텍스트를 읽을 때 엔터 입력시 ‘\n’를 읽으므로 다음 입력은 다음줄 부터 입력하게 된다.(‘\n’을 string 값으로 간주하지는 않음)
ex) String line = keyboard.nextLine(); → 문장 전체를 line 변수에 입력
useDelimiter(New Delimiter)
-키보드 입력의 구분 기호를 기준으로 문자열 입력
ex) String line = keyboard.useDelimiter(",") -> ,(쉼표) 를 기준으로 문자열 입력