黑马程序员技术交流社区
标题:
一个输出流的问题
[打印本页]
作者:
anyanyhai
时间:
2012-3-25 22:36
标题:
一个输出流的问题
FileReader fr = new FileReader("demo.txt");
int ch = fr.read(); \\能不能写为char ch=fr.read();下一句就不用转换了
System.out.println("ch="+(char)ch);
作者:
冯建鹏
时间:
2012-3-25 22:43
不可以吧,Filereader.read()返回值类型是int类型的,把int类型变换为char类型需要强制转换才可以,
char ch=(char)fr.read();这样应该可以, 不强制转换会报错吧。如果要是隐式转换的话可以不用强制转换java 虚拟机会自动帮您转换的。但是int 变为char是需要强制转换的。
作者:
贠(yun)靖
时间:
2012-3-25 22:50
不可以,read的方法返回类型是int的 是返回的字符在ascII码表对应的数字 除非你从新写一个返回类型为char类型的read方法
作者:
anyanyhai
时间:
2012-3-25 23:30
看看我问的问题多菜,问完之后才意识到这是“流”。
知道为什么了。
下次问问题的先自己想好了
作者:
zhouxp3323
时间:
2012-3-26 00:20
anyanyhai 发表于 2012-3-25 23:30
看看我问的问题多菜,问完之后才意识到这是“流”。
知道为什么了。
下次问问题的先自己想好了 ...
不可以,因为这个方法在封装的时候就已经把返回类型定义成int了,所以不能那样写。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2