java里的remove的用法和random的实现

2025-01-06 11:01:41
推荐回答(2个)
回答1:

//////时间关系,解决了第一个问题///////////////////////////
//////取歌手名字的方法写的不好,其实可以用取歌名的方法//////

import java.awt.List;

public class ListTest{
static List list=new List(); //存放歌曲列表
public static String getPersonName(String ListItem) //得到歌手名字
{
String [] li=ListItem.split(" ");
String Pname=li[li.length-2];
String PersonName="";
for (int i=1;i {
PersonName+=Pname.charAt(i);
}
return PersonName;
}
public static String getSongName(String ListItem)//得到歌名
{
int a=ListItem.indexOf("[");
String SongName="";
for(int i=0;i {
SongName+=ListItem.charAt(i);
}
return SongName;
}
public void remove(String track,String artist)
{
for(int i=0;i {
String PersonName=getPersonName(list.getItem(i));
String SongName=getSongName(list.getItem(i));
if(track.equals(SongName)&artist.equals(PersonName))
{
list.remove(i);
}
}
}
public static void main(String[] args) {
ListTest lt=new ListTest();
list.add("If I Were A Boy [Beyonce] Popular ");
list.add("Let it be [Beatles] Popular ");
list.add("Live Your Life [T.I. Featuring Rihanna] Popular ");
list.add("So What [Pink] Popular ");
list.add("Whatever You Like [T.I.] Popular ");
lt.remove("If I Were A Boy","Beyonce");
for(int i=0;i {
System.out.println(list.getItem(i));
}
}
}

回答2:

可以用split('[');把他分成一个字符串数组,数组中的第二个字符串就是歌手,乱序播放的话,就用random()方法;给歌名从0到n编号,然后取随机数就可以