如果从暑假开始学习Java算起,到现在为止也前前后后搞了5个月左右。整体而言,个人感觉java的输入数据,相对C语言而言,还是比较麻烦的。输出的话还好,以下是自己这些天来的相关总结。
一. 在运行程序时,通过命令行输入。(最简单,但比较笨的一种方法)
在编写程序时主函数 public static void main(String[] args)
中的String类型的参数 args,可以用来输入数据
例如,运行Test 程序时,输入相关参数
这样的结果就是 args[0] = "1",args[1] = "2",args[2] = "3"
ps:在使用eclipse的IDE中,使用这个方法的过程:单击右键 --> Run As --> Run Configurations -->Arguments 中输入参数,
如图:
二. 使用IO流 (比较好的方法,但有点难)
1. 直接使用已有的函数 System.int.read() (比较笨拙且不灵活的方法)
1) int n = System.in.read();
这样只能输入进来一个字符,并将它转换成相应的ASCII嘛,例如我在运行时,我从控制台中输入 1 ,那么n = 49
2)
byte[] b = new byte[100];
System.in.read(b);
输入进来字节串
2. 用灵活点的IO流。
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
} catch (IOException e) {
e.printStackTrace();
}
BufferedReader中的readLine是一个比较强函数,特别注意IO流定义时的System.in这个参数
三.如何将String类型转换成其他类型
的IO输入都是数据输入进来,并且输入进来的数据都是String类型,现在我们要解决的问题就是将它们转换成其他类型.(String类型是不能直接转换成其他类型的)
以下的方法以int型说明,其余的类型大同小异
方法一:
Integer IntNumber = new Integer(String_s);
int intNumber = IntNumber.intValue();
方法二:
int intNumber = Integer.parseInt(s);
四.用Scanner方法(补充,2009年11月27日22:43:07)
首先要载入util这个包
import java.util.Scanner;
之后的用法:
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();