>  기사  >  Java  >  java는 키보드로 입력한 값을 가져옵니다.

java는 키보드로 입력한 값을 가져옵니다.

angryTom
angryTom원래의
2019-07-16 16:17:393075검색

프로그램 개발 과정에서 키보드에 입력된 값을 얻어야 하는 경우가 종종 있습니다. C 언어에서는 scanf()를 제공하고, C++에서는 키보드 입력 값을 얻기 위해 미리 만들어진 함수인 cin()을 제공합니다. 그렇다면 자바는 키보드로 입력된 값을 어떻게 가져오는 걸까요? 세 가지 방법을 소개하겠습니다.

방법 1: 콘솔에서 문자를 받은 다음 인쇄합니다.

import java.io.*;public static void main(String [] args) throws IOException{ 
         System.out.print("Enter a Char:"); 
         char i = (char) System.in.read(); 
         System.out.println("your char is :"+i); 
}

이 방법은 키보드에서 입력 문자를 가져오지만 System.out.read()는 동시에 하나의 문자만 대상으로 지정할 수 있습니다. 시간이 지나면 얻어지는 변수의 유형은 char만 가능합니다. 숫자를 입력하고 정수 변수를 얻으려면 변수 유형을 수정해야 하는데 이것이 더 번거롭습니다.

방법 2: 콘솔에서 문자열을 받아 출력합니다. 이 질문에서는 입력한 문자열을 얻을 수 있도록 BufferedReader 클래스와 InputStreamReader 클래스

import java.io.*;public static void main(String [] args) throws IOException{ 
           BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
           String str = null; 
           System.out.println("Enter your value:"); 
           str = br.readLine(); 
           System.out.println("your value is :"+str); 
}

를 사용해야 합니다.

방법 3: 저는 이 방법이 가장 간단하고 강력하다고 생각합니다. Scanner 클래스를 사용하는 것입니다.

import java.util.Scanner;public static void main(String [] args) { 
         Scanner sc = new Scanner(System.in); 
         System.out.println("请输入你的姓名:"); 
         String name = sc.nextLine(); 
         System.out.println("请输入你的年龄:"); 
         int age = sc.nextInt(); 
         System.out.println("请输入你的工资:"); 
         float salary = sc.nextFloat(); 
         System.out.println("你的信息如下:"); 
         System.out.println("姓名:"+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary); 
}

공백으로 구분된 데이터를 연속으로 입력해야 하는 경우:

package iotest; 
import java.util.Scanner; 
public class ScannerTest { 
       public static void main(String[] args) {
              System.out.println("请输入5个整数,以空格分开,以回车结束:");              try{                     // 创建Scanner对象
                     Scanner scanner = new Scanner(System.in);                    
                     // 用于保存5个数字的数组
                     int a[] = new int[5];                    
                     for(int i=0;i<5;i++){                            // 把字符串转换为数字
                            a[i] = scanner.nextInt();
                            System.out.println(a[i]);
                     }
                    
              }catch(Exception e){
                     System.out.println("异常:"+e.toString());
              }
       }
}

위의 두 가지 코드 조각은 Scanner 클래스가 문자열, 정수 데이터 또는 부동 소수점 유형 변수인지 여부에 관계없이 기능을 달성하기 위해 약간만 변경하면 된다는 것을 보여주었습니다. 의심할 여지없이 그는 가장 강력합니다!

그러나 Scanner를 사용할 때는 nextLine() 이후의 nextInt() 상황에 주의해야 합니다.

더 많은 관련 지식을 보려면 다음을 클릭하세요: java tutorial

위 내용은 java는 키보드로 입력한 값을 가져옵니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.