gpt4 book ai didi

Java .getText 与硬编码字符串不返回相同的结果

转载 作者:行者123 更新时间:2023-11-29 09:40:19 24 4
gpt4 key购买 nike

我完全被这个难住了。 . .

如果我用以下代码调用下面的函数:

搜索(SearchTextField.getText());//(输入了玻璃纤维)

搜索(“玻璃纤维”);//硬编码

我得到以下结果:

玻璃纤维 10 不在这里

找到了 10 根玻璃纤维绳!

相同的字符串以相同的长度传递,不同的结果。怎么会这样?是的,我已经在 == 的两侧修剪了它,但没有运气。

我正在失去理智,我们将不胜感激。

Test[] array = new Test[3];
array[0] = new RowBoat("Wood", "Oars", 10);
array[1] = new PowerBoat("Fiberglass", "Outboard", 35);
array[2] = new SailBoat("Composite", "Sail", 40);




public void Search(String searchString) {

boolean found = false;
System.out.print(searchString + " " + searchString.length() + " ");

for (int i = 0; i < array.length; i++) {

if (searchString == array[i].getBoatMaterial()) {
found = true;
break;
}
}
if (found) {
System.out.println("String found!");
} else {
System.out.println("Not Here");
}
}

最佳答案

比较字符串时使用 .equals() 方法。不要使用 ==

equals() 将比较实际的字符串内容,无论字符串驻留在内存中的哪个位置。

if (searchString.equals(array[i].getBoatMaterial())) {

关于Java .getText 与硬编码字符串不返回相同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1768422/

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