为什么这个ArrayList不适用于Wave文件?(Java)的

Rob*_*Rob -2 java arraylist wav

我正在尝试创建代码以将wav文件放入数组列表,然后让arraylist播放文件.为什么这段代码不起作用?谢谢.

public class trackList {

    public void tracklist(){

        ArrayList<String> songs = new ArrayList();
        songs.add("c:\\01.wav");
        songs.add("c:\\02.wav");

        byte[] buffer = new byte[4096];
        for(int x = 0; x < songs.size(); x++){

          try{

                AudioInputStream ais = AudioSystem.getAudioInputStream(songs(x));
                AudioFormat format = ais.getFormat();
                SourceDataLine line = AudioSystem.getSourceDataLine(format);
                line.open(format);
                line.start();

          while (ais.available() > 0) {

                int len = ais.read(buffer);
                line.write(buffer, 0, len);

               }

            line.drain(); 
            line.close();

                } 
          catch (Exception e) {

                e.printStackTrace();

                }
        }                       
    } 
}
Run Code Online (Sandbox Code Playgroud)

Agu*_*les 6

不是Java专家,但可能是这一行:

AudioInputStream ais = AudioSystem.getAudioInputStream(songs(x));
Run Code Online (Sandbox Code Playgroud)

一定是

AudioInputStream ais = AudioSystem.getAudioInputStream(songs.get(x));
Run Code Online (Sandbox Code Playgroud)