Java中接收键盘输入的三种方法
程序员文章站
2024-03-05 09:47:36
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中没有现成的函数来获取键盘输入,但仍然可以用上述方法来实现,其中方法三应该是最简单,最方便的。