ArrayList .contain给出奇怪的输出

时间:2014-09-04 13:42:31

标签: java arraylist contain

任何人都能解释一下吗?我有一个带有字符串的arrayList。我使用!arraylist.contain来确保我不添加重复项。在下面的代码中,我显示了arraylist中的所有内容,然后使用!arraylist.contain

检查arraylist中是否存在相同的值
public ArrayList<String> getIsiXhosaRecordings(ArrayList<String> must_download, ArrayList<String> all_filenames)
{
    database = getReadableDatabase();

    for(int x = 0; x < all_filenames.size(); x++)
    {
        System.out.println("All files: >>>"+all_filenames.get(x)+"<<<");
    }

    String[] table_names = {"Voice_exercise", "Lesson_exercise"};
    for(int x = 0; x < table_names.length; x++)
    {
        String SQL = "SELECT * FROM "+table_names[x];
        Cursor cursor = database.rawQuery(SQL, null);

        while(cursor.moveToNext())
        {
            String audio_isixhosa = cursor.getString(cursor.getColumnIndex("audio_isixhosa"));
            if(!all_filenames.contains(audio_isixhosa));
            {
                System.out.println("Audio file: >>>"+audio_isixhosa+"<<<");
            }
        }
    }
    return must_download;
}

和logcat:

09-04 15:30:40.188: D/dalvikvm(14202): GC_CONCURRENT freed 65K, 9% free 9852K/10759K, paused 2ms+2ms, total 24ms
09-04 15:30:40.188: W/SQLiteConnectionPool(14202): A SQLiteConnection object for database '/data/data/com.example.molo/databases/molo.db' was leaked!  Please fix your application to end transactions in progress properly and to close the database when it is no longer needed.
09-04 15:30:40.298: I/System.out(14202): All files: >>>clock.jpg<<<
09-04 15:30:40.298: I/System.out(14202): All files: >>>confident.jpg<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>correct.png<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>correct.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>crowd.jpg<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e001.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e003.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e004.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e005.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e007.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e008.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e009.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e010.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e011.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e012.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e013.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e014.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e015.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e016.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e017.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e018.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e019.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e020.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e021.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e022.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>e023.wav<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>goodbye.jpg<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>greeting.jpg<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>how.jpg<<<
09-04 15:30:40.308: I/System.out(14202): All files: >>>howareyou.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>images<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>incorrect.png<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>incorrect.wav<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>kioskmode<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>lock.png<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>map.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>molo.db<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>morning.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>pe.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>question.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>question2.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>sounds<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>stranger.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>thembi.jpg<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>unlock.png<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>webkit<<<
09-04 15:30:40.318: I/System.out(14202): All files: >>>what.jpg<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>who.jpg<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>why.jpg<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>world.jpg<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x001.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x002.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x003.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x004.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x005.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x006.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x007.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x008.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x009.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x010.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x011.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x012.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x013.wav<<<
09-04 15:30:40.328: I/System.out(14202): All files: >>>x014.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x015.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x016.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x017.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x018.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x019.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x020.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x021.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x022.wav<<<
09-04 15:30:40.338: I/System.out(14202): All files: >>>x023.wav<<<
09-04 15:30:40.338: I/System.out(14202): Audio file: >>>x001.wav<<<
09-04 15:30:40.338: I/System.out(14202): Audio file: >>>x004.wav<<<
09-04 15:30:40.338: I/System.out(14202): Audio file: >>>x008.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x005.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x010.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x019.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x020.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x021.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x001.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x002.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x003.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x004.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x005.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x006.wav<<<
09-04 15:30:40.348: I/System.out(14202): Audio file: >>>x007.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x008.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x009.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x010.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x012.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x013.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x014.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x015.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x016.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x017.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x018.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x022.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>x023.wav<<<
09-04 15:30:40.358: I/System.out(14202): Audio file: >>>baboon.wav<<<
09-04 15:35:40.068: W/IInputConnectionWrapper(14202): getSelectedText on inactive InputConnection
09-04 15:35:40.068: W/IInputConnectionWrapper(14202): setComposingText on inactive InputConnection
09-04 15:35:40.068: W/IInputConnectionWrapper(14202): getExtractedText on inactive InputConnection

我添加了&#34;&gt;&gt;&gt;&#34;和&#34;&lt;&lt;&lt;&#34;确保我不会错过空格,稍后将使用arrayList must_download。 为什么相同的值列在 all_filenames.contains 以及 !all_filenames.conatins中?我尝试过每一次.toString(),但得到了相同的结果。我也对类似的文件名使用了类似的方法,它们完全正常。

由于

1 个答案:

答案 0 :(得分:13)

if终止声明后的分号

if(!all_filenames.contains(audio_isixhosa));
{ // <-- new block separate from if.

所以身体是一个空块。删除分号。

if(!all_filenames.contains(audio_isixhosa)) {