是一种比较方式
String sentence = new String(receivePacket.getData());
带一些字符串?
我尝试与
进行比较Arrays.equals(sentence.getBytes(),new String("Hello").getBytes();)
返回false ... 我试过了
if(sentence.equals("Hello"))
也不起作用。 我认为receivePacket有问题,但数据包中的数据是相同的 喜欢 '你好'vs'你好'
System.out.println(sentence.getBytes()+ " vs " + "Hello".getBytes());
输出 -
[B@4f0e921d vs [B@459ad677
答案 0 :(得分:1)
new String(packet.getData());
问题出在这里。你忽略了长度。它应该是:
new String(packet.getData(), packet.getOffset(), packet.getLength());