11智能在线
新记
Java 编程下 IO 中的输入流的 read 方法返回值为什么是 int 值
如题所述
举报该文章
相关建议 2018-08-03
java中
read()
方法返回的int类型:如果返回char, 那么无法表示流末尾. char的取值范围是从0到65535。这个范围内的所有字符, 都有可能在数据中出现。需要使用一个不可能在数据中出现的值来表示流末尾。那么Java中就是用-1来表示这个末尾的, 因为-1不会在数据中出现。而为了返回-1, 那么只能用int。当流中读取到一个字符时, read()方法内部就会当作int返回, 如果读到流末尾, 直接返回-1。
温馨提示:内容为网友见解,仅供参考
当前网址:
https://11.t2y.org/zz/ppq4s48m2pq2mf84mq7.html
其他看法
第1个回答 2017-07-25
read方法的作用是读取单个字符,而不同的编码方案,字符的编码长度是不同的(如ASCII编码用1个字节, UNICODE编码用2个字节),有的甚至还采用了非等长字符编码。但无论何种情况,一个字符最多也就用4个字节编码,因此将read定义为返回int值可以应付所有的编码方案。本回答被提问者采纳
第2个回答 2017-07-24
看API函数说明。
~
~
~
相似回答
大家正在搜
相关问题
java中的Reader类中的read方法返回值为什么是个i...
java中io类中的输入流inputStream的read方...
java io流里面的InputStream中的read方法...
javaIO输入流read返回值问题
java中的io流问题 FileInputStream中的r...
java的输入流的read方法返回的是什么呢?
java流的read方法返回值怎么来的?
FileInputStream和FileReader中的re...