我正在尝试为游戏制作背景音乐。出于某种原因,在第一次播放歌曲后,它不会再次播放。我做错了什么,我该如何解决?我知道我可以使用 .loop() 但我希望它永远重复,并且 .loop() 最终会停止。
public class playSong
extends Thread
{
Clip clip=null;
playSong()
{
start();
}
@Override
public void run()
{
while(true)
{
if(clip==null)
{
playSound("fax.wav");
}
else if(!clip.isRunning())
{playSound("fax.wav");}
}
}
public void playSound(String name)
{
try {
File file=new File(this.getClass().getResource(name).getFile());
AudioInputStream audio = AudioSystem.getAudioInputStream(file);
clip = AudioSystem.getClip();
clip.open(audio);
clip.start();
} catch (Exception e) {
System.out.print(e.getMessage());
}
}
}