使用ArrayList集合,编写一个模拟KTV点歌系统的程序.
在程序中,输入0代表添加歌曲,输入1代表将所选歌曲置顶,
输入2,代表将所选歌曲提前一位,输入3代表退出该系统.
package com.qf.day22.homework;
import java.util.ArrayList;
import java.util.Scanner;
/**
* @author deng
* @date 2023/2/23 21:10
*/
public class TestArrayList {
public static void main(String[] args) {
//使用ArrayList集合,编写一个模拟KTV点歌系统的程序.
//在程序中,输入0代表添加歌曲,输入1代表将所选歌曲置顶,
//输入2,代表将所选歌曲提前一位,输入3代表退出该系统.
System.out.println("----------欢迎来到点歌系统--------");
System.out.println("输入0,添加歌曲至列表");
System.out.println("输入1,将歌曲置顶");
System.out.println("输入2,将歌曲前移一位");
System.out.println("输入3,退出");
ArrayList<String> arrayList = new ArrayList<>();
System.out.println(" --------Beyond歌曲大全--------");
arrayList.add("海阔太空");
arrayList.add("真的爱你");
arrayList.add("光辉岁月");
arrayList.add("不再犹豫");
arrayList.add("灰色轨迹");
arrayList.add("无尽空虚");
arrayList.add("岁月无声");
arrayList.add("再见理想");
System.out.println("当前歌曲列表" + arrayList);
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.print("请输入要操作的序号:");
int i = scanner.nextInt();
switch (i) {
case 0:
System.out.print("请输入要添加的歌曲名称:");
String song = scanner.next();
System.out.println("以添加歌曲:" + song);
add(song, arrayList);
System.out.println("当前歌曲列表:" + arrayList);
break;
case 1:
System.out.print("请输入要置顶的歌曲名称:");
String song1 = scanner.next();
top(song1, arrayList);
System.out.println("当前歌曲列表:" + arrayList);
break;
case 2:
System.out.print("请输入要置前的歌曲名称:");
String song2 = scanner.next();
Forward(song2, arrayList);
System.out.println("当前歌曲列表:" + arrayList);
break;
case 3:
System.out.println(".........退出.........");
System.out.println("您已退出系统");
//退出系统
System.exit(0);
//退出方法体
// return;
default:
}
}
}
private static void Forward(String song2, ArrayList<String> arrayList) {
//判断集合内是否包含歌曲
if (arrayList.contains(song2)) {
//如果包含,获取歌曲的索引值
int index = arrayList.indexOf(song2);
//先把歌曲从集合内移除再通过索引值- 1添加到集合内,把歌曲置前
arrayList.remove(song2);
arrayList.add(index - 1, song2);
System.out.println("以将歌曲" + song2 + "置前一位");
} else {
//集合内没有输入的歌曲,返回提示
System.out.println("没有此歌曲");
}
}
private static void top(String song1, ArrayList<String> arrayList) {
//先把歌曲移除,再通过索引值0将歌曲添加到集合首位
arrayList.remove(song1);
arrayList.add(0, song1);
System.out.println("以将歌曲" + song1 + "置顶");
}
public static void add(String name, ArrayList<String> arrayList) {
//向集合内添加歌曲
arrayList.add(name);
}
}