2013-10-11 92 views
1

我有一个基于它们在他们在指定队列的顺序

我想让它做什么的目录顺序播放歌曲,为了一个类时,我发挥了一定的歌,我想它从队列中删除之前所有的歌,使其只播放歌曲以下

这是队列创建

http://pastebin.com/NwPx2nru

+1

**无关(如一个侧面说明):**你的方法名是C/C++风格(使用下划线到每个单词的方法的名字分开,而不是* camelCase *)。虽然不重要,但只是一个说明。也许这会很有用:[Java编程语言的代码约定](http://www.oracle.com/technetwork/java/codeconv-138413.html) – informatik01

回答

1

你可以不断地从队列中删除的项目,直到类你找到了您想播放的特定歌曲,然后停在那里。结果将是包含特定歌曲之后的所有项目的队列,并且之前没有任何内容。

public void playSpecificSong(String specificSong) { 
    String nextSong = songQueue.remove(); 
    while (!nextSong.equals(specificSong) && !songQueue.isEmpty()) { 
     nextSong = songQueue.remove(); 
    } 

    if (nextSong.equals(specificSong)) { 
     // specific song was found in the queue and is held within the nextSong variable 
     // songQueue now contains all songs AFTER specificSong and nothing before 
    } else { 
     // specific song wasn't found in the queue 
     // songQueue is now empty 
    } 
} 

编辑:改变变量的Java语法