我要用到DataInputStream从控制台读取一个数据(Java的基本数据类型)然后让它去做算术运算。请问怎么实现。
注:用readInt()等方法直接读取的话好像行不通我写了一段代码如下(这只是测试代码):
import java.io.*;
public class Test{
public static void main(String[] args){
DataInputStream dis=new DataInputStream(System.in);
long a=0;
try{
a=readLong();
} catch(IOException e){
e.printStackTrace();
}
System.out.println(a);
}
}
输入12时 输出的结果是 825362957
为什么输入与输出不同?
import java.io.DataInputStream;
import java.io.IOException;
public class mains {
public static void main(String[] args) {
DataInputStream dis=new DataInputStream(System.in);
String num1="";
String num2="";
try {
System.out.println("请输入第一个数字");
num1 = dis.readLine();
System.out.println("请输入第二个数字");
num2 = dis.readLine();
System.out.println("num1+num2="+(Integer.parseInt(num1)+Integer.parseInt(num2)));
System.out.println("num1*num2="+(Integer.parseInt(num1)*Integer.parseInt(num2)));
System.out.println("num1/num2="+(Integer.parseInt(num1)/Integer.parseInt(num2)));
System.out.println("num1-num2="+(Integer.parseInt(num1)-Integer.parseInt(num2)));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
看看测试结果