为什么arraylist.contains()不起作用?

eve*_*ron 0 java arraylist

我有一个ArrayList,我正在填写我打印的东西,以确保我不重复相同的字符串.我正在使用.contains()方法来检查:

if(!outputted.contains(string)){etc...} 
Run Code Online (Sandbox Code Playgroud)

我在Eclipse上运行调试器仍然打印重复,我看到即使ArrayList确实持有String,它仍然会读取if语句,就好像它没有.我真的很困惑为什么会这样.任何提示或建议将不胜感激.

nic*_*o_c 6

if(!outputted.contains(string)){etc...}
Run Code Online (Sandbox Code Playgroud)

上面的if语句的主体只有在String不在ArrayList中时才会执行.您可能想要做的是尝试相同的if条件,但没有!这样:

if(outputted.contains(string)){etc...} 
Run Code Online (Sandbox Code Playgroud)

但是,如果没有其余的代码,很难判断这是否真的存在问题.