這是返回false .... IM期待真正Java List containsAll返回false?
List<String> listA // [941, 946, 940, 942]
List<String> listB //[941, 942, 940, 946,888, 466, 777]
listB.containsAll(listA) //FALSE ??
這是返回false .... IM期待真正Java List containsAll返回false?
List<String> listA // [941, 946, 940, 942]
List<String> listB //[941, 942, 940, 946,888, 466, 777]
listB.containsAll(listA) //FALSE ??
false
結果意味着在listA
有些值沒有在listB
相應的(等於)值。這可能是由一些不必要的空格造成的。你需要知道,
"foo".equals(" foo")
將返回false
這意味着使用的值不相等的,因爲空間也算字符。
如果每個字符串格式正確,您提供的示例數據就可以正常工作。
import java.util.Arrays;
import java.util.List;
public class Test {
public static final void main(String[] ignored) {
List<String> listA = Arrays.asList(new String[]{"941", "946", "940", "942"});
List<String> listB = Arrays.asList(new String[]{"941", "942", "940", "946", "888", "466", "777"});
System.out.println(listB.containsAll(listA));
}
}
輸出:true
爲什麼在這種情況下這會被降低? – aliteralmind
大聲笑..我不知道這個男人......這些帥哥有趣 –
@aliteralmind可能是因爲它本質上[適合我](http://meta.stackexchange.com/questions/118992/are-works-for-me-答案 - 有效)評論,而不是答案(你沒有解釋OP做錯了什麼)。 – Pshemo
是空白準確嗎? –
它是一個用逗號分隔的字符串列表.... whitespace正好在註釋 –
的右邊,但是你的字符串沒有引號,所以我想知道是否空格被認爲是字符串的一部分。 –