JAVA编写 用System.in.read()读取字符
本人选了JAVA公选课,现在老师给复习题,但不给答案,还烦请高手帮忙解答,以便我核对,谢谢!编写一个Application,一次从键盘输入一个字符,输出这个字符的整数数值...
本人选了JAVA公选课,现在老师给复习题,但不给答案,还烦请高手帮忙解答,以便我核对,谢谢!
编写一个Application,一次从键盘输入一个字符,输出这个字符的整数数值,以字符‘!’结束字符的输入。提示:用方法System.in.read( )读取一个字符。 展开
编写一个Application,一次从键盘输入一个字符,输出这个字符的整数数值,以字符‘!’结束字符的输入。提示:用方法System.in.read( )读取一个字符。 展开
展开全部
很简单啊,
System.in.read()返回的是InputStream指向命令行输入的字节流,它的read方法以字节流的方式来读取命令行的输入的数据。也就是说,输入的字符,以字节流的方式从命令行传递给变量a,因此此时a是一个整数(字节流以整数的方式来表示)。实际上,刚好这个整数是ascii码中对应十进制数(具体可查看ascii码对照表)。
比如输入A,因为A在ascii码中对应的十进制数是65,所以输出的就是65 ,正好满足你所说的输入字符,输出整数!
int a=0;
while(a!=!)
try {
a = System.in.read();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("a = "+a);
System.in.read()返回的是InputStream指向命令行输入的字节流,它的read方法以字节流的方式来读取命令行的输入的数据。也就是说,输入的字符,以字节流的方式从命令行传递给变量a,因此此时a是一个整数(字节流以整数的方式来表示)。实际上,刚好这个整数是ascii码中对应十进制数(具体可查看ascii码对照表)。
比如输入A,因为A在ascii码中对应的十进制数是65,所以输出的就是65 ,正好满足你所说的输入字符,输出整数!
int a=0;
while(a!=!)
try {
a = System.in.read();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("a = "+a);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询