问答详情
源自:4-1 字节流之文件输入流FileInputStream-1

b代表的是索引还是什么?

我这样理解的,数组里面最后一个的索引是-1,所以读到-1就结束了,可是不知道为什么又转换成16进制了,b输出来到底是什么内容?

提问者:慕侠3348009 2018-08-26 23:35

个回答

  • Passionate1
    2018-10-19 10:02:19
    已采纳

    int b;

    while((b=in.read())!=-1){

    }

    这里定义的b 是in.read()读到有值的话就是整数,并把值赋值给b,然后与-1做比较,不等于-1,说明还有值,可以继续读取,如果是-1,里面没有值了,退出循环

  • 政政0213
    2018-10-25 12:25:23

     /**

         * Reads a byte of data from this input stream. This method blocks

         * if no input is yet available.

         *

         * @return     the next byte of data, or <code>-1</code> if the end of the

         *             file is reached.

         * @exception  IOException  if an I/O error occurs.

         */

        public int read() throws IOException {

            return read0();

        }

     说的很清楚,the next byte of data, or <code>-1</code> if the end of the

         *             file is reached.没有值是-1,读的是里面的数据,不是索引


  • 宝慕林4014974
    2018-08-27 17:13:57

    你可以去看看源码,里面表示read方法的返回值,源码里面有写如果没有结尾,输出值就不为-1