欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java中接收键盘输入的三种方法

程序员文章站 2024-03-04 00:02:40
import java.io.bufferedreader; import java.io.ioexception; import java.io.in...
import java.io.bufferedreader;  
import java.io.ioexception;  
import java.io.inputstreamreader;  
import java.util.scanner;  
 
public class entertest { 
   
  public static void main(string[] args) { //主方法 
    chartest();  //调用system.in方法 
    readtest();  //调用readtest方法 
    scannertest();//调用scannertest方法 
  } 
  /** 
   * system.in和system.out方法 
   * 缺点一: 该方法能获取从键盘输入的字符,但只能针对一个字符的获取 
   * 缺点二: 获取的只是char类型的。如果想获得int,float等类型的输入,比较麻烦。 
   */ 
  public static void chartest(){  
    try{ 
      system.out.print("enter a char:"); 
      char i = (char)system.in.read(); 
      system.out.println("yout enter char is:" + i); 
    } 
    catch(ioexception e){ 
      e.printstacktrace(); 
    } 
     
  } 
  /** 
   * inputstreamreader和bufferedreader方法 
   * 优点: 可以获取键盘输入的字符串 
   * 缺点: 如何要获取的是int,float等类型的仍然需要转换 
   */ 
  public static void readtest(){ 
    system.out.println("readtest, please enter data:"); 
    inputstreamreader is = new inputstreamreader(system.in); //new构造inputstreamreader对象 
    bufferedreader br = new bufferedreader(is); //拿构造的方法传到bufferedreader中 
    try{ //该方法中有个ioexcepiton需要捕获 
      string name = br.readline(); 
      system.out.println("readtest output:" + name); 
    } 
    catch(ioexception e){ 
      e.printstacktrace(); 
    } 
     
  } 
  /** 
   * scanner类中的方法 
   * 优点一: 可以获取键盘输入的字符串 
   * 优点二: 有现成的获取int,float等类型数据,非常强大,也非常方便; 
   */ 
  public static void scannertest(){ 
    scanner sc = new scanner(system.in); 
    system.out.println("scannertest, please enter name:"); 
    string name = sc.nextline();  //读取字符串型输入 
    system.out.println("scannertest, please enter age:"); 
    int age = sc.nextint();    //读取整型输入 
    system.out.println("scannertest, please enter salary:"); 
    float salary = sc.nextfloat(); //读取float型输入 
    system.out.println("your information is as below:"); 
    system.out.println("name:" + name +"\n" + "age:"+age + "\n"+"salary:"+salary); 
  } 
} 

总结:
要获取键盘中的输入:
python提供了,python2中有raw_input(),python3中有input()。
c提供了scanf()函数
c++提供cin()函数来获取键盘输入
java中没有现成的函数来获取键盘输入,但仍然可以用上述方法来实现,其中方法三应该是最简单,最方便的。