我有一个带有〜已知二进制序列的字节数组。我需要确认二进制序列是应该的。.equals
除之外==
,我还尝试了其他方法,但均无济于事。
byte[] array = new BigInteger("1111000011110001", 2).toByteArray();
if (new BigInteger("1111000011110001", 2).toByteArray() == array){
System.out.println("the same");
} else {
System.out.println("different'");
}
在您的示例中,您具有:
if (new BigInteger("1111000011110001", 2).toByteArray() == array)
在处理对象时,==
java中会比较 参考值
。您正在检查对by返回的数组的引用toByteArray()
是否与所保存的引用相同array
,这当然永远不会正确。此外,数组类不会覆盖,.equals()
因此其行为Object.equals()
仅是比较参考值。
为了比较两个数组的 内容
,Arrays类提供了静态数组比较方法。
byte[] array = new BigInteger("1111000011110001", 2).toByteArray();
byte[] secondArray = new BigInteger("1111000011110001", 2).toByteArray();
if (Arrays.equals(array, secondArray))
{
System.out.println("Yup, they're the same!");
}
我有一个简单的javascript问题,我真的需要一些帮助!我正在尝试弄清楚如何在数组之间比较元素,以及在下一个循环中再次比较较大的元素。假设我们有数组A和数组B。 我的问题是,在比较索引处的元素之后,我希望在下一个循环周期中比较较大的元素。 如果A=[5,7,4],B=[2,8,5] 在第一个循环中,5与2进行比较,2较小,因此会发生一些事情。在下一个循环周期中,我希望5与8进行比较,而对于现在
本文向大家介绍用Java在一行中比较两个字节的数组,包括了用Java在一行中比较两个字节的数组的使用技巧和注意事项,需要的朋友参考一下 可以使用java.util.Arrays.equals()方法在Java中比较两个字节数组。如果数组相等,则此方法返回true,否则返回false。如果两个数组以相同顺序包含相同数量的元素,则它们相等。给出了一个使用Arrays.equals()方法比较两个字节数
问题内容: 我有这个间隔,当前每5秒执行一次ajax请求。我对声明有疑问。我的代码总是输入它,并且两个json值完全相同,为什么它认为它们不同? 编辑 这是控制台输出(虚线是分隔请求,它不在实际输出中) 问题答案: 不能保证以相同的方式序列化JSON对象,也不能保证属性以相同的顺序进行序列化,使用并不是测试对象相等性的好方法。 一个更好的例子是这样的函数(前一段时间在互联网上找到,希望我能感谢原始
在这两行中都输出。它们是相同的东西,所以输出的不应该是吗?
问题内容: 我正在尝试编写代码以比较两个数组。在第一个数组中,我输入了自己的数字,但是在第二个数组中,输入了输入文件中的数字。该数组的大小由文件中的第一个数字确定,而第一个数组的大小始终为10。两个数组以及数字的长度必须相同。 我的代码如下: 问题答案: