1일차의 마지막 내용. 배우면서 느끼는 거는 공부 밀리면 답도 없겠다 하는 거...
아, 오늘은 글씨체를 변경해보았다. 티스토리는 처음이라 이것저것 바꿔보는 중
1. printf 메소드
서식문자(format 문자)
따옴표 안에 작성하고 %와 함께 사용
%d : 정수
%f : 실수
%s : 문자열
%c : 문자
printf
서식문자를 사용할 수 있는 출력 메소드
("서식문자열", 값) 형식으로 사용
printf 사용
ex1) System.out.println(10.0/3); // 3.3333333... < 실수 자리수 조절 불가
이 때 소수점을 둘째자리까지만 출력하고 싶으면 printf 사용
System.out.printf("%.2f", 10.0/3); // 3.33 < 출력 형식을 지정할 수 있다
ex2) System.out.printf("이름: %s\n", "이순신"); // 이름: 이순신
뒤에 올 값들은 서식문자의 갯수와 타입에 맞춰서 따라와야 한다.
printf()는 print()와 마찬가지로 줄바꿈이 안되기 때문에 \n을 이용해 준다.
printf() 메소드를 사용하면 문자열 연결을 할 때, 자칫 길게 작성될 수 잇는 여러 변수의 코드를 한 번에 보기 쉽게 한 줄에 표시가 가능하다.
printf 사용 실습
저번 포스팅과 동일한 형식의 실습에 printf를 적용해 보았다. 솔직히 아직까진 코드가 단순해서 그런지 위에서 언급한 printf의 편리함을 잘 못 느끼는 중
2. 입력 메소드
입력
사용자가 개발자에게 값을 넘겨주는 행위
입력 상태
커서가 깜빡이면서 값이 들어오기를 기다리는 상태
Scanner
화면으로부터 데이터를 입력받는 기능을 제공하는 클래스
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
system.out.println(num); // 사용자가 입력한 num 값을 받아 출력하는 과정
.(하위연산자)
A.b : A 안의 b, A의 b
입력 메소드의 종류
next() : 통째로가 사용자가 입력한 문자열 값. 공백 또는 엔터를 구분점으로 판단! 하고 분리하여 입력받는다.
- ex. next(홍 길동) // "홍", "길동" 이렇게 분리하여 "홍"만 입력받는다.
nextLine() : 통째로가 사용자가 입력한 문자열 값. 공백도 문자로 입력받는다.
- ex. nextLine(홍 길동) // "홍 길동" 입력됨
- 앞에 nextLine()을 제외한 다른 입력이 있다면, 의미없는 nextLine()을 미리 하나 써주어야 한다.(아래 예시 있음)
nextInt() : 통째로가 사용자가 입력한 정수값. 정수가 아닌 다른 값을 입력하면 오류가 난다.
입력 메소드 예제
위에 설명이 생략되어 있는데, Scanner 사용을 위해선 import java.util.Scanner; 필수! Scanner가 java.util 패키지에 있다는 것을 컴파일러에게 알려주는 역할을 한다. 이 코드가 생략되면 Scanner를 찾을 수 없다는 컴파일 에러가 발생한다.
홍 길동을 입력하면 next()는 공백을 구분점으로 판단하고 "홍"과 "길동"으로 각자 입력받는다. 따라서 name에는 "홍"이, name2에는 "길동"이 들어가게 된다.
위에서 '앞에 nextLine()을 제외한 다른 입력이 있다면, 의미없는 nextLine()을 미리 하나 써주어야 한다.'라고 설명했는데, 이는 nextLine()이 공백까지도 문자로 입력받기 때문이다. 때문에 nextLine()을 중간에 호출하지 않고 String addr = sc.nextLine()만 호출했을 경우, "홍 길동"을 적고 누른 엔터가 addr에 입력되게 되어 사는 곳은 공백으로 출력되고 바로 나이 입력을 기다리게 된다.
nextInt()는 정수만을 입력받으므로 의미없는 메소드를 호출하지 않아도 OK.
참고로 입력 메소드가 활성화(?) 되어 있을 때는 콘솔 창의 우측 상단 회색 네모가 빨간색 네모로 활성화 되어 있는 걸 볼 수 있다. 첨부된 그림은 입력이 모두 끝났기 때문에 회색 네모 상태.
참고 2로 입력할 때 커서를 방향키로 아랫까지 확실히 내려준 뒤 입력해줄 것! 왜인지는 정확히 모르겠지만 그냥 입력하니 오류가 나더라.
'이론 > 자바 기초' 카테고리의 다른 글
Java 그게 뭐야? 6. 연산자 (0) | 2022.01.26 |
---|---|
Java 그게 뭐야? 5. 형변환 (0) | 2022.01.26 |
Java 그게 뭐야? 3. 변수랑 자료형이랑 (0) | 2022.01.25 |
Java 그게 뭐야? 2. 출력하기 (0) | 2022.01.25 |
Java 그게 뭐야? 1. 안녕 Java (0) | 2022.01.25 |