gpt4 book ai didi

java - 当两者的输出相同时,为什么我的 if/else 语句不匹配?

转载 作者:行者123 更新时间:2023-12-01 13:45:42 30 4
gpt4 key购买 nike

        List6 = new ArrayList<String>();
List6.add(driver.findElement(By.xpath(".//*[@name='authorName']")).getAttribute("value"));
System.out.println("List6 : " +List6);
System.out.println("List1 : " +List1.get(u));
if (List1.get(u).equals(List6)){
System.out.println("author name checked!");
} else {
System.out.println("wrong author name!");
}

为什么它总是用 else 语句返回我?我打印的列表 6 和 1 都给了我相同的返回

这就是结果

List6 : [alan]
List1 : alan
wrong author name!

我的列表 1 数组

[alan, ben, chris, dawn, eva, fann, grace, helen, ian, jag, ken, lyn, stephen]
for (int u = 0; u < List1.size(); u++) {
System.out.println(List1.get(u));

最佳答案

String 类上的 equals() 方法对两个字符串的内容进行逐字符比较。

就在进行比较之前,您将打印出字符串,任何人都可以很容易地看到它们非常不同。您输入 if else block 的 else 部分的原因是 if (List1.get(u).equals(List6)) 总是评估 false。

[alan]alan 不是等价的字符串,当使用 .equals() 进行比较时,它们将返回 false.

关于java - 当两者的输出相同时,为什么我的 if/else 语句不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20390505/

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