验证字节数组

时间:2017-05-03 00:55:04

标签: java arrays

我正在尝试在java中编写一个函数来解析一个字节数组,以确定它是否遵循某种模式。这种模式如下:

  1. 数组中的前两个字节是1和0
  2. 这两个字节后跟一个以0结尾的随机字节序列。
  3. 这个随机字节序列之后是另一个字节,也是以0结尾的字节。
  4. 此终止0后没有字节。
  5. 我无法思考如何实现这样一个功能的逻辑。

1 个答案:

答案 0 :(得分:0)

假设你有一个初始化的字节数组,它已经初始化并且长度大于2:

byte[] array = ...

如果前两个字节分别为1和0,则:

array[0] == 1 && array[1] == 0

然后你说有两个随机的字节序列,必须以0结束。这意味着我们只需要在前两个索引之后专门在数组中查找两个0

Collections.frequency(Arrays.asList(Arrays.copyOfRange(array, 2, array.length)), 0) == 2

您还必须检查最后一个字节是否为0:

array[array.length - 1] == 0