• 写一个点歌器2


    package iit.cn.demo6_1_1;
    
    import java.util.LinkedList;
    import java.util.Scanner;
    
    /*
     * ktv点歌功能:
     *    指令0:添加歌曲
     *    指令1:将所选歌曲置顶
     *    指令2:所选歌曲提前一位
     *    指令3:退出系统
     */
    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 lineUpList=new LinkedList();   //创建歌曲列表
            addMusicList(lineUpList);//初始化列表
            
            while(true) {             //一直循环执行此操作,直到退出系统
                System.out.println("请选择要执行的操作:");
                Scanner scan= new Scanner(System.in);
                int i=scan.nextInt();      //接受键盘输入的指令
                switch(i) {
                    case 0:  //  添加歌曲至列表
                        addMusic(lineUpList);
                        break;
                    case 1:  //将所选歌曲置顶
                        setTop(lineUpList);
                        break;
                    case 2:   //所选歌曲提前一位
                        setBefore(lineUpList);
                        break;
                    case 3:  
                        exit();//退出系统
                        break;
                    default:
                        System.out.println("--------------------");
                        System.out.println("指令错误!请输入正确的指令");
                        break;
                }
                System.out.println("当前歌曲列表:"+lineUpList);
                System.out.println("--------------------------");
                System.out.println();
           }
       }
       
       //歌曲初始化
       public static void addMusicList(LinkedList lineUpList) {
           lineUpList.add("稻香");
           lineUpList.add("夜曲");
           lineUpList.add("听妈妈的话");
           lineUpList.add("夜的第七章");
           lineUpList.add("龙卷风");
           System.out.println("当前歌曲列表:"+lineUpList); 
          
       }
       
       //执行添加歌曲
       public static void addMusic(LinkedList lineUpList) {
           System.out.println("请输入要添加的歌曲:");
           String musicName=new Scanner(System.in).nextLine();
           lineUpList.add(musicName);   //将歌曲添加到最后
           
       }
       
       //将歌曲置顶
       public static void setTop(LinkedList lineUpList) {
           System.out.println("请选择要置顶的歌曲:");
           String name=new Scanner(System.in).nextLine();
           int position=lineUpList.indexOf(name);  //判断歌曲的位置
           
           if(position<0) {
               System.out.println("歌曲不存在");
           }else {
               lineUpList.addFirst(name);
               lineUpList.remove(position);
           }
          
       }
       
       //选中歌曲向前一位
       public static void setBefore(LinkedList lineUpList) {
           System.out.println("请选择要向前移的歌曲:");
           String name=new Scanner(System.in).nextLine();
           int index=lineUpList.indexOf(name);
           if(index<0) {
               System.out.println("没有此歌曲");
           }else {
               lineUpList.remove(index);
               lineUpList.add(index-1, name);
               
           }
       }
       //退出系统
       public static void exit() {
           System.out.println("--------------退出-------------");
           System.out.println("您已退出系统!");
           System.exit(0);
       }
       
    }
  • 相关阅读:
    MDK中编译程序后Program Size详解
    win10快速访问的文件夹无法删除的解决方法
    stm32类型cl、vl、xl、ld、md、hd的含义
    史上最全软件测试工程师常见的面试题总结(四)【多测师_王sir】
    基于PO和单例设计模式用python+selenium进行ui自动化框架设计【多测师】
    经典的Python编程题【多测师_王sir】
    Java中的泛型【多测师_王sir】【软件测试】
    Java设计模式之单例模式、工厂模式、PO模式【多测师_王sir】
    Java+Selenium做UI自动化中@FindBy和@CacheLookup用法【多测师_王sir】
    postman中接口的入参为图片的处理方式【多测师_王sir】
  • 原文地址:https://www.cnblogs.com/zhilili/p/10670763.html
Copyright © 2020-2023  润新知