KTV点歌系统------LinkedList

时间:2019-11-12
本文章向大家介绍KTV点歌系统------LinkedList,主要包括KTV点歌系统------LinkedList使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

代码:

  1 import java.util.LinkedList;
  2 import java.util.Scanner;
  3 import java.util.Set;
  4 
  5 public class KTVByLinkedList {
  6     public static void main(String[] args) {
  7         System.out.println("---------------欢迎来到点歌系统----------------");
  8         System.out.println("0.添加歌曲到歌曲列表中");
  9         System.out.println("1.将歌曲置顶");
 10         System.out.println("2.将歌曲向前移一位");
 11         System.out.println("3.退出");
 12         LinkedList linkedList = new LinkedList();
 13         addMusicList(linkedList);
 14         while (true){
 15             Scanner sc = new Scanner(System.in);
 16             int command = sc.nextInt();
 17             switch (command){
 18                 case 0:
 19 //                    如果是0的话 调用添加歌曲的方法到歌曲列表中
 20                     addMusic(linkedList);
 21                     break;
 22 //                    如果是1的话 调用歌曲置顶的方法将歌曲置顶
 23                 case 1:
 24                     SetTop(linkedList);
 25                     break;
 26 //                    如果是2的话 调用歌曲置顶的方法将歌曲向前移一位
 27                 case 2:
 28                     SetBefore(linkedList);
 29                     break;
 30 //                    如果是3的话 调用歌曲置顶的方法进行退出
 31                 case 3:
 32                     exit();
 33                     break;
 34                 default:
 35                     System.out.println("-------------------------------------------");
 36                     System.out.println("sorry,功能选择有误,请输入正确的功能序号!");
 37                     break;
 38             }
 39             System.out.println("当前歌曲列表是:"+linkedList);
 40         }
 41     }
 42     public static void exit() {
 43         System.out.println("---------------退出---------------");
 44         System.out.println("您已退出系统!");
 45         System.exit(0);
 46     }
 47 //    执行将歌曲进行往前移一位的方法
 48     public static void SetBefore(LinkedList linkedList) {
 49         System.out.println("请输入您想要前移歌曲的名称:");
 50         Scanner sc = new Scanner(System.in);
 51         String MusicName =  sc.nextLine();
 52         int position = linkedList.indexOf(MusicName);
 53         if (position<0){//不存在
 54             System.out.println("当前列表中没有您输入的歌曲……");
 55         }
 56 //            判断歌曲是否在第一位上
 57         else if (position == 0) {
 58             System.out.println("您选择的歌曲已经是第一位了");
 59         }else {
 60 //            移除指定的歌曲
 61             linkedList.remove(MusicName);
 62 //            将指定的歌曲放到前一位上去
 63             linkedList.add(position -1, MusicName);
 64         }
 65         System.out.println("您选中的歌曲"+MusicName+"已经往前移动一位了");
 66     }
 67 //    执行将歌曲置顶的方法  有查询歌曲的功能
 68     public static void SetTop(LinkedList linkedList) {
 69         System.out.println("请输入您想要置顶歌曲的名称:");
 70         Scanner sc = new Scanner(System.in);
 71         String MusicName = sc.nextLine();
 72 //        指定某首歌曲的位置
 73         int position = linkedList.indexOf(MusicName);
 74 //        进行判断是否寻找这首歌曲
 75         if (position < 0) {//不存在
 76             System.out.println("当前列表中没有您输入的歌曲……");
 77         } else {
 78 //            移除指定的歌曲
 79             linkedList.remove(MusicName);
 80 //            将指定的歌曲放在第一位
 81             linkedList.addFirst(MusicName);
 82             System.out.println("您选中的歌曲" + MusicName + "已进行置顶");
 83         }
 84     }
 85     //  执行添加歌曲的方法
 86     public static void addMusic(LinkedList linkedList) {
 87         System.out.println("请输入您想要添加歌曲的名称:");
 88         Scanner sc = new Scanner(System.in);
 89         String MusicName =  sc.nextLine();
 90         linkedList.addLast(MusicName);
 91         System.out.println("已添加的歌曲是:"+ MusicName);
 92     }
 93 //    初始化添加歌曲列表
 94     public static void addMusicList(LinkedList linkedList) {
 95         linkedList.add("成都");
 96         linkedList.add("理想");
 97         linkedList.add("小草");
 98         System.out.println("歌曲列表有:"+ linkedList);
 99     }
100 }

原文地址:https://www.cnblogs.com/wangjixue/p/11840686.html