Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jsoup:String元素.attr()在if()中不起作用_Java_Jsoup - Fatal编程技术网

Java Jsoup:String元素.attr()在if()中不起作用

Java Jsoup:String元素.attr()在if()中不起作用,java,jsoup,Java,Jsoup,我没有Java方面的经验,我有一个问题 使用Jsoup,我有一个名为td的元素。如果我这样做: String attr = td.attr("class"); System.out.println(attr); String attr = td.attr("class"); if (attr == "free") { System.out.println("freedom!"); } 输出是免费的,这是完全正确的。如果我这样做: String attr = td.attr("class");

我没有Java方面的经验,我有一个问题

使用Jsoup,我有一个名为td的元素。如果我这样做:

String attr = td.attr("class");
System.out.println(attr);
String attr = td.attr("class");
if (attr == "free") {
System.out.println("freedom!");
}
输出是免费的,这是完全正确的。如果我这样做:

String attr = td.attr("class");
System.out.println(attr);
String attr = td.attr("class");
if (attr == "free") {
System.out.println("freedom!");
}
没有输出

有人知道如何解决这个问题吗


提前感谢。

您必须使用equals方法比较字符串,因为==比较引用,而不是字符串内容

String attr = td.attr("class");
if (attr.equals("free")) {
    System.out.println("freedom!");
}

必须使用equals方法比较字符串,因为==比较引用,而不是字符串内容

String attr = td.attr("class");
if (attr.equals("free")) {
    System.out.println("freedom!");
}

谢谢,成功了!当我这样看的时候,这是合乎逻辑的,但我对Java没有经验。谢谢,这很有效!当我这样看的时候,这是合乎逻辑的,但我对Java没有经验。@Rohit Jain是的,你是对的。因为我是Java新手,所以我没有看到这一点,因为我认为这是Jsoup的一个问题。现在我看到了答案,我明白我的想法是完全错误的。@Rohit Jain是的,你是对的。因为我是Java新手,所以我没有看到这一点,因为我认为这是Jsoup的一个问题。现在我看到了答案,我明白我的想法是完全错误的。