CodeGym /Java Blog /무작위의 /Java의 스캐너 클래스에 nextChar()가 있습니까?
John Squirrels
레벨 41
San Francisco

Java의 스캐너 클래스에 nextChar()가 있습니까?

무작위의 그룹에 게시되었습니다
Java에서 문자 입력을 받는 것은 문자열이나 정수로 입력하는 것만큼 간단하지 않습니다. Java의 Scanner 클래스는 nextInt() , nextLong() , nextDouble() 등과 함께 작동합니다. 그러나 Java에서는 nextChar를 지원하지 않으므로 문자 입력을 약간 더 복잡하게 만듭니다. Java에서 문자 입력을 받으려고 하는데 nextChar()가 작동하지 않는 경우 입력을 문자로 적절하게 받는 방법은 다음과 같습니다.

Java의 nextChar() 스캐너 클래스

Java Scanner 클래스에는 고전적인 nextChar() 메서드 가 없습니다 . Java에서 char 입력을 받는 가장 간단하고 가장 좋은 대안은 next().charAt(0) 입니다 . charAt (0) 명령 은 명령줄에 입력되는 다음 문자 또는 문자열을 기록하도록 Java에 지시하는 간단한 next() 명령 과 함께 사용됩니다 . 이 입력은 문자열, 문자 또는 숫자일 수 있습니다. charAt 명령은 원하지 않는 데이터 유형을 필터링하는 방법이며 입력을 char 데이터 유형으로만 제한합니다 . charAt는 char 값의 형태로만 출력을 반환하므로 모든 유형의 데이터 유형을 char 유형으로 변환합니다 . Scanner 및 next()를 사용하여 문자 입력을 받으려면, 다음 두 줄의 코드를 사용할 수 있습니다.

Scanner input = new Scanner (system.in);
char a = input.next().charAt(0);
next() 를 사용하면 지정되지 않은 데이터 유형의 입력을 수락할 예정임을 Java에 알리는 것입니다. 이 입력에는 무한한 양의 문자가 포함될 수 있습니다. 그러나 charAt 명령을 사용하고 인덱스로 '0'을 전달하면 단일 문자만 입력으로 사용하여 변수에 저장합니다. 입력 라인의 반환 값은 단일 문자입니다. 다음에 수신할 입력이 무엇이든 수락하도록 컴파일러에 지시했기 때문에 단일 문자만 초기화된 것은 상관하지 않습니다. Java에서 char 입력을 허용하는 코딩 예제는 다음과 같습니다.

import java.util.Scanner;
   public class CharExample {
       public static void main(String[] args) {
 
           //Initializing input
           Scanner input = new Scanner(System.in);
           System.out.print("Input any character: ");
 
           //Using next().charAt(0) to Accept Char Input
           char a = input.next().charAt(0);
 
           //Printing the Contents of 'a'
           System.out.println("The Variable A Contains the Following Data: " + a);
       }
   }
출력은 다음과 같습니다.
임의의 문자 입력: l 변수 A는 다음 데이터를 포함합니다: l
Java에서 사용자의 문자 입력을 수락하는 다른 대안이 있습니다. 작업을 완료하는 직관적인 방법이기도 한 reader.useDelimiter("")reader.next()를 사용할 수 있습니다 .
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION