import java.util.LinkedList;
import java.util.Scanner;
import java.util.Set;
public class KTVByLinkedList {
public static void main(String[] args) {
System.out.println("---------------欢迎来到点歌系统----------------");
System.out.println("0.添加歌曲到歌曲列表中");
System.out.println("1.将歌曲置顶");
System.out.println("2.将歌曲向前移一位");
System.out.println("3.退出");
LinkedList linkedList = new LinkedList();
addMusicList(linkedList);
while (true){
Scanner sc = new Scanner(System.in);
int command = sc.nextInt();
switch (command){
case 0:
// 如果是0的话 调用添加歌曲的方法到歌曲列表中
addMusic(linkedList);
break;
// 如果是1的话 调用歌曲置顶的方法将歌曲置顶
case 1:
SetTop(linkedList);
break;
// 如果是2的话 调用歌曲置顶的方法将歌曲向前移一位
case 2:
SetBefore(linkedList);
break;
// 如果是3的话 调用歌曲置顶的方法进行退出
case 3:
exit();
break;
default:
System.out.println("-------------------------------------------");
System.out.println("sorry,功能选择有误,请输入正确的功能序号!");
break;
}
System.out.println("当前歌曲列表是:"+linkedList);
}
}
public static void exit() {
System.out.println("---------------退出---------------");
System.out.println("您已退出系统!");
System.exit(0);
}
// 执行将歌曲进行往前移一位的方法
public static void SetBefore(LinkedList linkedList) {
System.out.println("请输入您想要前移歌曲的名称:");
Scanner sc = new Scanner(System.in);
String MusicName = sc.nextLine();
int position = linkedList.indexOf(MusicName);
if (position<0){//不存在
System.out.println("当前列表中没有您输入的歌曲……");
}
// 判断歌曲是否在第一位上
else if (position == 0) {
System.out.println("您选择的歌曲已经是第一位了");
}else {
// 移除指定的歌曲
linkedList.remove(MusicName);
// 将指定的歌曲放到前一位上去
linkedList.add(position -1, MusicName);
}
System.out.println("您选中的歌曲"+MusicName+"已经往前移动一位了");
}
// 执行将歌曲置顶的方法 有查询歌曲的功能
public static void SetTop(LinkedList linkedList) {
System.out.println("请输入您想要置顶歌曲的名称:");
Scanner sc = new Scanner(System.in);
String MusicName = sc.nextLine();
// 指定某首歌曲的位置
int position = linkedList.indexOf(MusicName);
// 进行判断是否寻找这首歌曲
if (position < 0) {//不存在
System.out.println("当前列表中没有您输入的歌曲……");
} else {
// 移除指定的歌曲
linkedList.remove(MusicName);
// 将指定的歌曲放在第一位
linkedList.addFirst(MusicName);
System.out.println("您选中的歌曲" + MusicName + "已进行置顶");
}
}
// 执行添加歌曲的方法
public static void addMusic(LinkedList linkedList) {
System.out.println("请输入您想要添加歌曲的名称:");
Scanner sc = new Scanner(System.in);
String MusicName = sc.nextLine();
linkedList.addLast(MusicName);
System.out.println("已添加的歌曲是:"+ MusicName);
}
// 初始化添加歌曲列表
public static void addMusicList(LinkedList linkedList) {
linkedList.add("成都");
linkedList.add("理想");
linkedList.add("小草");
System.out.println("歌曲列表有:"+ linkedList);
}
}
KTV点歌系统-------LinkedList
最新推荐文章于 2021-05-28 14:36:55 发布