繁体   English   中英

我有两个byte [],我需要比较此byte []之间的字符串,是否需要显式转换new String(byte [])

[英]I have two byte[] , I need to compare strings between this byte [], does it require explicit conversion new String(byte[])

我的目标是比较两个字节数组中的两个字符串值。 它实际上需要创建两个新的字符串对象才能使用contains方法。 是正确的选择,还是有任何方法可以使用优化方法而无需使用新的关键字。

if(new String(bSourceStr).contains(new String(dest))) {
   return true;
} else {
   return false;
}

如果要比较包含基本类型值(例如字节)的数组的实际内容,请使用Arrays.equals() )。

String str1="Hello";
String str2="Hello";
byte[] aa = str1.getBytes();
byte[] bb = str2.getBytes();
System.out.println(Arrays.equals(aa, bb));

使用Arrays.deepEquals比较包含对象的数组。

同样,您还可以使用java.lang.Byte.compareTo(Byte anotherByte)数字比较两个Byte对象。 看一下此Java.lang.Byte.compareTo()方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM