【发布时间】:2016-06-21 19:06:30
【问题描述】:
所以,我正在为我的计算机科学课制作一个游戏,但我最近遇到了一个问题:当 mp3 文件播放完毕时,标题屏幕上播放的音乐停止了。我有一个 MP3 课和一个音乐课,但是一旦歌曲完成,我不知道如何让 MP3 再次播放。这是我的 MP3 课:
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import javazoom.jl.player.Player;
public class MP3
{
String filename;
Player player;
public void stopMP3() { if (player != null) player.close(); }
// play the MP3 file to the sound card
public void playMP3(String filename) {
try {
FileInputStream fis = new FileInputStream(filename);
BufferedInputStream bis = new BufferedInputStream(fis);
player = new Player(bis);
}
catch (Exception e) {
System.out.println("Problem playing file " + filename);
System.out.println(e);
}
// run in new thread to play in background
new Thread()
{
public void run() {
try {player.play(); }
catch (Exception e) {System.out.println(e); }
}
}.start();
}
}
这是我的音乐课:
import java.io.*;
import javazoom.jl.player.Player;
import java.util.Random;
import java.util.Scanner;
import java.io.FileNotFoundException;
import java.util.*;
public class Music
{
private ArrayList<String> songs;
public Music(ArrayList<String> list)
{
songs = new ArrayList<String>();
for(int i = 0; i < list.size(); i++)
{
songs.add(list.get(i));
}
}
public String getRandSong()
{
Random r = new Random();
int randSongIndex = r.nextInt(songs.size());
return songs.get(randSongIndex);
}
}
我想在我的音乐课上制作一个方法,但我不知道如何检查 MP3 是否完成。顺便说一句,我只使用 Java 编程不到一年,所以如果您对我的代码有任何其他建议,我很乐意接受。此外,整个程序旨在在计算机上运行,而不是在任何手持设备上运行,如果这有什么不同的话。
【问题讨论】: