hasnext()란? - [java]
2024. 4. 24. 23:04ㆍjava
1.hasNext()란?
Scanner의 메소드로, 다음에 가져올 값이 있으면 True, 없으면 False입니다.
반환 타입은 boolean입니다.
2.hasNext()와 next()의 차이
hasNext()와 next()의 역할은 비슷해 보이면서도 약간의 차이가 있습니다.
hasNext()는 아까 말했듯이, "True or False"로 반환됩니다. 다음에 가져올 값이 있으면 True, 없으면 False입니다.
next()는 즉 아무 타입으로 반환할 수 있습니다. Iterator에 입력된 값들이 String이면 String 값으로 가져오는 것입니다.
3.hasNext()와 hasNextLine()의 차이
hasNext()는 다음에 읽을 토큰(단어)이 있는지 확인하고,
hasNextLine()은 다음에 읽을 이 있는지 확인합니다.
4.hasNextInt()와 hasNextShort() 등등의 함수
hasNext뒤로 Boolean, Double, Int 등등 자료형이 붙은 건 입력된 값이 그 자료형일 경우에는 true값을 반환하고 아닐 경우 false를 반환하는 함수이다.
Scanner input = new Scanner(System.in);
do {
System.out.println("a값을 입력해주세요.");
int a = input.nextInt();
System.out.println("b값을 입력해주세요.");
int b = input.nextInt();
System.out.println("두 값의 합: " + (a + b));
} while (input.hasNextInt());
코드 설명
간단한 설명을 하면 a값 입력 후 b값도 입력 후 두 값 출력 후에, 다음에 입력 될 자료형이 int형이면 계속 실행 하고, 그 외의 자료형이면 작동하지 않습니다. 그 근거로, String형인 str이 입력되었는데, 작동하지 않습니다.
5. 출처
6. 관련 자료 - (next 시리즈 정리 자료)
'java' 카테고리의 다른 글
Arrays 클래스란? (0) | 2024.05.01 |
---|---|
StringTokenizer 클래스와 메소드들 (0) | 2024.04.30 |
(JAVA) BufferedWriter (0) | 2024.04.24 |
StringBuilder란? (0) | 2024.04.20 |
java Math 클래스 (0) | 2024.04.19 |