首先,使用JAVA进行输入输出有着明显的不同,System.out.println()是经过处理的JAVA输出函数,开发者可以直接使用该函数进行输出操作,但JAVA的输入函数没有经过处理,要进行输入就会比较麻烦,JAVA所提供的System.in.read()输入读取函数只能读取所输入数据的ASCII码,如果我们想让JAVA程序原模原样地读取我们所输入的数据,那我们就必须对该函数进行处理。
如下例所示:
import java.io.IOException;
public class ForceConvert
{
public static void main(String[] args) throws IOException
{
double doubleValue = 9.9;
int intValue = 0;
int a = System.in.read(); //该语句中的中a是用来获取用户输入的数据,但是当我们输入1时,程序只会执行else后面的语句,这说明该函数所读取到的并非整型的1
if(a==1)
{
intValue = (int)doubleValue;
System.out.println(intValue);
}
else
{
intValue = (int)(doubleValue+0.5);
System.out.println(intValue);
}
}
}
处理过后的代码:
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.BufferedReader;
public class ForceConvert
{
public static void main(String[] args) throws IOException
{
double doubleValue = 9.9;
int intValue = 0;
BufferReader reader = new BufferReader(new(InputStreamReader(System.in)));
int a = ParseInt(reader.readline());//将数据转换为整型
if(a==1)
{
intValue = (int)doubleValue;
System.out.println(intValue);
}
else
{
intValue = (int)(doubleValue+0.5);
System.out.println(intValue);
}
}
}