728x90
키코드(KeyCode)
- 키보드에서 키를 입력할 때 프로그램에서 숫자로 된 키코드를 읽음
- System.in의 read() 사용
- 얻은 키코드는 대입 연산자 사용하여 int 변수에 저장
A를 입력하여 65를 출력했다.
키코드를 입력할 때 A의 값인 65만 입력되는 것이 아니라 Enter의 값인 13과 10도 같이 입력이 된다.
그래서 같은 출력문을 반복하면 13과 10도 같이 출력이 된다.
위와 같이 while문을 이용하여 계속해서 입력을 받을 수 있다.
if문과 break를 추가하여 종료 기능을 만들 수 있다.
System.in.read()의 단점
- 2개 이상의 키가 조합된 한글을 한꺼번에 읽을 수 없다.
- 키보드로 입력된 내용을 통문자열로 읽을 수 없음
Scanner로 해결
자바가 제공하는 Scanner 클래스를 이용하면 입력된 통문자열을 읽을 수 있음
package sec04.exam05;
import java.util.Scanner;
public class ScannerExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String inputData;
while(true) {
inputData = scanner.nextLine();
System.out.println("입력된 문자열: \"" + inputData + "\"");
if(inputData.equals("q")) {
break;
}
}
System.out.println("종료");
}
}
Scanner 클래스의 사용 예시이다.
기본 타입의 값 비교와 문자열 비교
기본 타입의 값 비교는 == 사용
int x = 5;
boolean result = (x == 5); //true
문자열의 비교는 equals() 메서드 사용
//boolean result = inputData. equals("비교문자열");
String str = "java";
boolean result1 = str.equals("java"); //true
boolean result1 = str.equals("python"); //false
'JAVA > 혼자공부하는자바' 카테고리의 다른 글
[JAVA기초] 연산자의 종류 (단항 연산자) (0) | 2020.12.08 |
---|---|
[JAVA기초] 연산자와 연산식 (0) | 2020.12.07 |
[JAVA기초] 변수와 시스템 입출력 (0) | 2020.12.06 |
[JAVA기초] 변수 타입 변환 3 (문자열 타입 변환) (0) | 2020.12.06 |
[JAVA기초] 정수의 타입 변환 2 (연산에서의 타입변환) (0) | 2020.12.05 |