java - 如何获取字节数组中的元素数量?

标签 java arrays

众所周知,Java 在声明时分配数组的大小。这意味着如果我这样定义数组:

byte[] buffer = new byte[10];

buffer.length 将返回 10。但是,我的问题是,我怎样才能找出填充了多少元素。我从 InputStream 填充元素,所以我永远不知道那里会有多少元素。

我知道分配的空数组位置将为 0,但是如果我也从 InputStream 获得零值,并与正常值混合在一起怎么办?

最佳答案

你不能。只需将您读取的字节数存储在一个变量中。 InputStream.read()返回读取的字节数:

Returns:

the total number of bytes read into the buffer, or -1 if there is no more data because the end of the stream has been reached.

关于java - 如何获取字节数组中的元素数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32164767/

相关文章:

java - 当在JSP中单击提交按钮时,如何将HTML5验证添加到隐藏标签中?

java - 将长字符串压缩为较短的字符串,这是使用 Java 所独有的

c# - 在 c# 中使用 c lib - 包含指向数组第一个元素的指针的结构

arrays - 查询返回具有特定日期范围编号的文档,然后对它们进行排序,然后排序

java - java中的ByteBuffer在没有写入任何内容时返回数据,不会抛出异常

ruby - 二维数组 - 求和 'row' 并添加为数组的新元素

java - 通过使用另一个 Controller 来操作 JavaFX Controller

java - 为什么我的 JButtons 在放入 JPanel 的构造函数时不显示?

java - Android - 输入流无法正常工作

PHP 多重更新函数未更新并获取第一行空白