谢谢@ThorbjørnRavnAndersen的回答(评论)。你是对的,最新的数组段(在我的例子中:[1700..1768])保持长度。
全貌:
您可以使用“表达式”视图并评估length
成员:
请记住,最后一个索引比长度少一个!
虽然这适用于 public 数组成员,但似乎受保护成员需要显式强制转换。请考虑以下代码:
...
ByteArrayInputStream is = new ByteArrayInputStream(new byte[1769]);
...
现在,在评估is.buf
时,“表达式”视图会显示问题中显示的数组转储,但评估is.buf.length
会失败并显示<error(s)_during_the_evaluation>
。如果我们向ByteArrayInputStream
添加显式转换,则评估有效: