Take a 챨 입력을 스캐너

나는 할 수 있는 방안을 찾는 시행하십시오 챨 'a' 키보드 입력.

전화했는데 사용:

Scanner reader = new Scanner(System.in);
char c = reader.nextChar();

이 방법은 doesn& # 39, t 존재합니다.

'C' 으로 'String' 등을 찾았다. 그러나 나는 항상 모든 사건의 작업하십시오 않을 것이라고 때문에 지역 내 방식을 다른 방법 '에는' 챨 표시됨과 입력입니다. 그러므로 내가 취할 수 있는 방법을 찾아야 할 명시적으로 챨 표시됨과 입력입니다.

어떤 도움이 될까?

해결책

첫 번째 문자 '에서' 스카너스네스트 시행하십시오 수 있습니다.

char c = reader.next().charAt(0);

Exactly 사용하도록 한 문자를 사용할 수 있습니다.

char c = reader.findInLine(".").charAt(0);

Strictly 사용하도록 한 문자를 사용할 수 있습니다.

char c = reader.next(".").charAt(0);
해설 (12)

설정 스캐너:

reader.useDelimiter("");

이 후 단일 문자 () '는' 레이드리네스트 반환되므로 구체화하십시오.

해설 (0)

Api 에서 얻을 수 있는 방법은 없는 문자 단위이다. ' ()' 와 '스테링스하르트 호출하십시오 스카너스네스트 통해 문자열을 내려받습니다 합니다 (0)' 의 방법을 반환되었습니다 구체화하십시오.

Scanner reader = new Scanner(System.in);
char c = reader.next().charAt(0);

그냥 돌아올 수도 있습니다 () '를 통해 첫 공백' 에서 문자열을 호출하십시오 트리밍할 분리하십시오 공백.

Scanner reader = new Scanner(System.in);
char c = reader.next().trim().charAt(0);
해설 (0)

이 세 가지 방법으로 외곽진입 문제:

  • 반드시 '다음 ()' 의 첫 번째 문자를 문자열의 푸십시오 스캐너, (예를 들어 'charAt (0)') 스케쳐내 선의 미삭 읽을 수 있는 문자로, 나머지 문자는 반복할 구체화하십시오. 이 코드는 다른 대답을 한다.

  • 사용 '세드리미터 (&quot ";)' 은 구분 빈 문자열을 설정할 수 있습니다. 이로 인해 '다음 ()' 을 tokenize agent. 않는비즈니스 문장열 정확히 하나의 문자 길다. 그럼 다음 리하르트 (0) '을 거듭 호출하십시오 수 있습니다' () 는 문자를 사용할 수 있습니다. 그런 다음 구분 및 다시 원래 값으로 설정합니다 스캐닝중 일반적인 방법으로!

  • List. 판독기에서 대신 apiu 스캐너 제공한다. 이 방법은 하나의 문자 입력 스트림을 레이더그리드 () '는' 에서 읽습니다. 예를 들면 다음과 같습니다.

판독기에서 판독기에서 = new 린퍼트슈타림레이더 (System.in). int (중국) = 레이더그리드 (); if (ch! = - 1) EOF 확인할지 {/ / // 우리는 문자. }

'System.in' 를 통해 콘솔에서 읽을 때, 입력, 단, 일반적으로 버퍼된 운영 체제에서 &quot released&quot. 응용 프로그램 사용자가 유형은상위 입력합니다. 그래서 응용 프로그램의 경우, 이는 개별 키보드 응답하려면 생각이 획에는 not going to work. 사용자가 필요로 하는 운영체제별 네이티브 코드를 위한 몇 가지 문제를 해결할 수 있는 물건을 선반가공 끄기나 선 버퍼링 콘솔용 os 레벨에서.

참조:

해설 (1)

39, 사실은 이 doesn& 빗나갔다.

char c = reader.next().charAt(0);

몇 가지 좋은 설명 및 참조입니다 이 질문: https://stackoverflow.com/questions/18746185/why-doesnt-the-scanner-class-have-a-nextchar-method 구분 기호를 사용하여 &quot, 스캐너, 토큰, 이는 꽤 열기을 pattern&quot 끊어집니다 입력할 수 없었다. 예를 들어 이 사용할 때

c = lineScanner.next().charAt(0);

입력 (input) 이 선 &quot, (1 + 9) / (3 - 1) 개+6 2&quot -; 다음 호출이 &quot 되돌려줍니다, (1", 캜 설정됩니다 & # 39, (& # 39, 및 you& 떨어지는 1& # 39, & # 39, # 39, ll end up 다음 () 에서 다음 콜

일반적으로 가져올 때 문자 싶은 무시하려면 공백. 이 협력했습니다 가져다줄래요:

c = lineScanner.findInLine("[^\\s]").charAt(0);

참조: https://stackoverflow.com/questions/1181271/regex-to-match-a-single-character-that-is-anything-but-a-space

해설 (1)

이 문제를 해결할 수 있습니다,) 의 키보드 입력을 한 해 한 챨 &quot time&quot. 간단히 말해. 또한 사용하지 않고도 모든 입력 버퍼 선택해제한 부작용이 없는 스캐너를 이용해 이 있다.

char c = (char)System.in.read();

All you need is 경우 C 언어 () 과 동일한 기능을 &quot 제처 "; 그런 다음 이 기능을 사용할 수 멋지구리해요. () 이 큰 장점 중 &quot 시스템.인그리드 "; 는 버퍼 초과 각 챨 너회의 grab 지워지지 않습니다. 그래서 계속 필요한 경우 모든 it 의 사용자들이 입력하는 입력 버퍼 미삭 내려받습니다 수는 있습니다. 이 ',' (0), &quot 리하르트 &quot 챨 c = 스카너스네스트 () 는 챨 않지만, 길을 잡아 선택취소합니다 것을 의미한다.

// Java program to read character without using Scanner
public class Main
{
    public static void main(String[] args)
    {
        try {
            String input = "";
            // Grab the First char, also wait for user input if the buffer is empty.
            // Think of it as working just like getChar() does in C.
            char c = (char)System.in.read();
            while(c != '\n') {
                //
                input += c; // 

                //then grab the next char
                c = (char)System.in.read();
            }
            //print back out all the users input
            System.out.println(input);
        } catch (Exception e){
            System.out.println(e);
        }
    }
}  

ᄋ "이번 도움됐네, 앤 굿 럭! 추신 그러니까말이야 있지만, 이것은 정말 오래된 게시물로의 제 대답은 다른 사람들을 또한 새로운 분석 및 재연됩니다 바란다 이 문제가 도움이 될 수 있다.

해설 (0)

가장 좋은 방법은 시행하십시오 스캐너에 클래스는 문자 입력:

Scanner sca=new Scanner(System.in);
System.out.println("enter a character");
char ch=sca.next().charAt(0);
해설 (0)
      • 정확히요 두 가지 방식, 한 글자 한 글자 또는 엄격히 * 인컨텍스트 시행하십시오 수 있습니다. The reader) 가 앨리어스보다 정확히 사용할 때, 첫 번째 문자만 관계없이 가부키쇼 문자이어야 너회가 입력입니다.

예를 들면 다음과 같습니다.

import java.util.Scanner;  

public class ReaderExample {  

    public static void main(String[] args) {  

        try {  

        Scanner reader = new Scanner(System.in);

        char c = reader.findInLine(".").charAt(0);

            reader.close();  

            System.out.print(c);

        } catch (Exception ex) {  

            System.out.println(ex.getMessage());  

        }

    }  

}  

문자 세트를 만들 때,, the reader) 가 입력으로 &quot 말하도다 abcd&quot 고려해보십시오 서신입니다 a& # 39, & # 39, 즉, 첫 번째 문자만

그러나 엄밀히 말해 사용할 때 단 하나의 문자 입력 합니다. 만약 둘 이상의 문자 입력 가 다음 판독기에서 입력입니다 시행하십시오 않습니다.

import java.util.Scanner;  

public class ReaderExample {  

    public static void main(String[] args) {  

        try {  

        Scanner reader = new Scanner(System.in);

        char c = reader.next(".").charAt(0);

            reader.close();  

            System.out.print(c);

        } catch (Exception ex) {  

            System.out.println(ex.getMessage());  

        }

    }  

}  

예를 들어, 입력 변수, no, you give 입력입니다 &quot abcd&quot 수행됨을, 그리고 c Null 값을 가지게 됩니다.

해설 (0)
import java.util.Scanner;

public class userInput{
    public static void main(String[] args){
        // Creating your scanner with name kb as for keyBoard
        Scanner kb = new Scanner(System.in);

        String name;
        int age;
        char bloodGroup;
        float height;

        // Accepting Inputs from user
        System.out.println("Enter Your Name");
        name = kb.nextLine(); // for entire line of String including spaces
        System.out.println("Enter Your Age");
        age = kb.nextInt(); // for taking Int
        System.out.println("Enter Your BloodGroup : A/B/O only");
        bloodGroup  = kb.next().charAt(0); // For character at position 0
        System.out.println("Enter Your Height in Meters");
        height = kb.nextFloat(); // for taking Float value

        // closing your scanner object
        kb.close();

        // Outputting All
        System.out.println("Name : " +name);
        System.out.println("Age : " +age);
        System.out.println("BloodGroup : " +bloodGroup);
        System.out.println("Height : " +height+" m");

    }
}
해설 (0)

첫 번째 문자 입력 판독기에서 콩지름에 사용자 정의 대신 더 빠른 결과를 추출 충스러웠으니 판독값 구체화하십시오. 사용자 정의 링크 스칸레이더 및 설명: https://gist.github.com/nik1010/5a90fa43399c539bb817069a14c3c5a8

코드 스캐닝중 챨:

BufferedInputStream br=new BufferedInputStream(System.in);
char a= (char)br.read();
해설 (2)

이거 드세요. 챨 c = S. 네스틀린 리하르트 () (0);

해설 (0)

(0) 메서드를 사용하여 구체화하십시오 내려받습니다 합니다 () 와 호출하십시오 스카너스네스트 스테링스하르트 http://cowcast. creativecow. 반환되었습니다 구체화하십시오.

  • 부여 됨으로써 :*
    import java.util.Scanner;

    public class InputC{

            public static void main(String[] args) {
                // TODO Auto-generated method stub
                   // Declare the object and initialize with
                   // predefined standard input object
                    Scanner scanner = new Scanner(System.in);
                    System.out.println("Enter a character: ");
                    // Character input
                    char c = scanner.next().charAt(0);
                    // Print the read value
                    System.out.println("You have entered: "+c);
            }

        }

출력입니다

Enter a character: 
a
You have entered: a
해설 (0)
package Pack;

import java.util.Scanner;

public class test { 
    public static void main(String[] args) {

        Scanner reader = new Scanner(System.in);
        char c = reader.next(".").charAt(0);

    }
}

한 문자만 챨 afaq 레이드리네스트 리하르트 (0), c = (.&quot ";)

해설 (1)
// Use a BufferedReader to read characters from the console.
import java.io.*;
class BRRead {
public static void main(String args[]) throws IOException
{
char c;
BufferedReader br = new
BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter characters, 'q' to quit.");
// read characters
do {
c = (char) br.read();
System.out.println(c);
} while(c != 'q');
}
}
해설 (0)

됩니다.

Scanner keyboard = new Scanner(System.in);<br>
char c = keyboard.next().charAt(0);

39 의 that& 거잖나.

해설 (0)

이 시도하시겠습니까

Scanner scanner=new Scanner(System.in);
String s=scanner.next();
char c=s.charAt(0);
해설 (0)
Scanner key = new Scanner(System.in);
//shortcut way 
char firstChar=key.next().charAt(0);  
//how it works;
/*key.next() takes a String as input then,
charAt method is applied on that input (String)
with a parameter of type int (position) that you give to get      
that char at that position.
You can simply read it out as: 
the char at position/index 0 from the input String
(through the Scanner object key) is stored in var. firstChar (type char) */

//you can also do it in a bit elabortive manner to understand how it exactly works
String input=key.next();  // you can also write key.nextLine to take a String with spaces also
char firstChar=input.charAt(0);
char charAtAnyPos= input.charAt(pos);  // in pos you enter that index from where you want to get the char from

그나저나 너 can& # 39, t take a 챨 직접 표시됨과 입력입니다. 위에서 알 수 있듯이 문자열으로 처음 수행됨을 charAt (0), 다음 및 저장할 수 있다.

해설 (0)
import java.io.*;

class abc // enter class name (here abc is class name)
{
    public static void main(String arg[])
    throws IOException // can also use Exception
    {
        BufferedReader z =
            new BufferedReader(new InputStreamReader(System.in));

        char ch = (char) z.read();
    } // PSVM
} // class
해설 (0)

타입 캐스팅 사용할 수 있습니다.

Scanner sc= new Scanner(System.in);
char a=(char) sc.next();

이 때문에 시행하십시오 & # 39 에서 문자열 입력을 하면, & # 39, 다음 () 함수 그런데 문자 # 39, & # 39 char& 변환될지 인한 것으로 보인다. 언급된 브래킷에.

이 방법을 통해 대상 데이터 입력 데이터 유형을 변환되게 거론하며 브래킷에 호출됨 타이펙팅. 작동하잖아 가져다줄래요 좋겠다 작동하잖아 for u:)

해설 (1)

문자 색인입니다 찾기 위해 지정된 스팅, 이 코드를 사용할 수 있습니다.

package stringmethodindexof;

import java.util.Scanner;
import javax.swing.JOptionPane;

/**
 *
 * @author ASUS//VERY VERY IMPORTANT
 */
public class StringMethodIndexOf {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        String email;
        String any;
        //char any;

//any=JOptionPane.showInputDialog(null,"Enter any character or string to find out its INDEX NUMBER").charAt(0);       
//THE AVOBE LINE IS FOR CHARACTER INPUT LOL
//System.out.println("Enter any character or string to find out its INDEX NUMBER");
       //Scanner r=new Scanner(System.in);
      // any=r.nextChar();
        email = JOptionPane.showInputDialog(null,"Enter any string or anything you want:");
         any=JOptionPane.showInputDialog(null,"Enter any character or string to find out its INDEX NUMBER");
        int result;
        result=email.indexOf(any);
        JOptionPane.showMessageDialog(null, result);

    }

}
해설 (0)