Java String.contentEquals(字符序列)工作不正常
我试图比较一个名为Java String.contentEquals(字符序列)工作不正常,java,string,boolean,boolean-expression,Java,String,Boolean,Boolean Expression,我试图比较一个名为receivedMessage的String,它是从字符序列构建的字符串,以形成字符串log\u req。执行此操作的代码如下所示 for(int i = 0; i<33;i++) { char temp = (char)message.get(37+i); recievedMessage+=temp; } 打印出来的 log_req false 但是,既然receivedMessage也是log_req,那么这是否应该被评估为true?有人知道为什么它一
receivedMessage
的String
,它是从字符序列
构建的字符串,以形成字符串log\u req
。执行此操作的代码如下所示
for(int i = 0; i<33;i++)
{
char temp = (char)message.get(37+i);
recievedMessage+=temp;
}
打印出来的
log_req
false
但是,既然
receivedMessage
也是log_req
,那么这是否应该被评估为true
?有人知道为什么它一直计算为false
而不是true
吗?我希望它是这样的?试试“log_req”。contentEquals(receivedMessage)
。那里可能有空格。@DaaaahWhoosh仍然返回false
@MarounMaroun收到的消息来自具有固定大小字符串的数组缓冲区,如果没有填充固定大小的字符串,则在字符串结尾处用\0
System.out.println(receivedMessage.trim())填充未使用的空格.contentEquals(“log_req”)??这不是解决办法,而是问题的标志
log_req
false