gpt4 book ai didi

java - Java中字符串相等性比较失败

转载 作者:行者123 更新时间:2023-12-01 14:53:36 25 4
gpt4 key购买 nike

我从对象列表中的一个对象中获取一个字符串值。

transitionName = transitionList.get(m).getTransitionName().toString();

以及来自 EJB 查询检索的对象的另一个字符串值。

changeItem = changeItemFacade.getChangeItem(changeGroupList.get(1));
char tempNewString[] = changeItem.getNewstring();
newString=new String(tempNewString);

现在,Char[] 与 String 的比较是因为包含 ChangeItem 的 Oracle 表已将列 NewString 定义为 CLOB。ejb 实体将变量 'NewString' 的类型定义为 Char[] 数组。所以我必须在进行比较之前将其转换为字符串。

问题是这个 if 语句总是返回 false 并且不会被执行。

if(transitionName.equalsIgnoreCase(newString)){}

当我尝试记录值(Logger.Debug)时,它完美地显示服务器实例日志中的两个(相等)字符串值。

我转换 char[] 数组的方式有问题吗?

我尝试将实体类变量的类型更改为 String(当然还有 getter 和 setter 方法),但也不起作用。

最佳答案

在比较之前尝试对字符串进行修剪()。另外,查找字符编码差异。 –奇点

关于java - Java中字符串相等性比较失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14544774/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com