package manage; import java.util.Scanner; /*测试系统类 *功能:实例化系统界面对象即可 */ public class Test { public static void main(String[] args) { MainFrame mainFrame = new MainFrame(); } static class Music { //歌名 private String name; //歌手 private String musicPlayer; //歌长 private double musicTime; //标记歌曲的状态变量(由于数组定长 ,打标记的方法实现删除false默认正常true删除) private boolean isDelete; public Music() { this("","",0); } //带参数的构造方法 public Music(String name,String player,double time) { this.name = name; this.musicPlayer = player; this.musicTime = time; } //set get方法 public String getName() { return name; } public void setName(String name) { this.name = name; } public String getMusicPlayer() { return musicPlayer; } public void setMusicPlayer(String musicPlayer) { this.musicPlayer = musicPlayer; } public double getMusicTime() { return musicTime; } public void setMusicTime(double musicTime) { this.musicTime = musicTime; } public boolean isDelete() { return isDelete; } public void setDelete(boolean isDelete) { this.isDelete = isDelete; } //打印方法(歌名 歌手 歌长) @Override public String toString() { return "Music [name=" + name + ", musicPlayer=" + musicPlayer + ", musicTime=" + musicTime + "]"; } } static class MusicList { // 定义歌曲数组 Music[] musicsArray; public MusicList() { // 实例化歌曲数组 musicsArray = new Music[5]; // 调用初始化方法 initMusicArray(); } // 私有的方法初始化歌单 private void initMusicArray() { // 构造方法实例化一个对象,然后添加到数组 Music music1 = new Music("平凡的一天", "毛不易", 240.0); musicsArray[0] = music1; Music music2 = new Music("北京欢迎你", "群星", 345.0); musicsArray[1] = music2; } // 歌单打印 public void musicPrint() { // 遍历数组 for (int i = 0; i < musicsArray.length; i++) { Music music = musicsArray[i]; if (music != null) { System.out.println(music); } } } // 添加歌曲 public void musicAdd() { System.out.println("请输入歌曲名称"); String musicName = new Scanner(System.in).next(); System.out.println("请输入演唱者"); String musicPlayer = new Scanner(System.in).next(); System.out.println("请输入歌曲时长"); double musicPayer = new Scanner(System.in).nextDouble(); // 封装对象 Music music = new Music(musicName, musicPlayer, musicPayer); // 调用对象添加方法 boolean b = add(music); // 判断b if (b) { System.out.println("添加成功"); } else { System.out.println("添加失败"); } } // 添加歌曲对象 public boolean add(Music music) { // 调用索引方法查看空索引 int index = searchEmptyIndex(); // 找到空索引 if (index != -1) { musicsArray[index] = music; return true; } return false; } // 查询索引 private int searchEmptyIndex() { for (int i = 0; i < musicsArray.length; i++) { Music music = musicsArray[i]; // 当前位置为空,返回当前下标,用来把保存新的歌曲对象 if (music == null) { return i; } } return -1; } } static class MainFrame { //创建歌单对象 MusicList musicList; //构造器 public MainFrame() { musicList = new MusicList(); initFrame(); } //初始化界面 public void initFrame() { System.out.println("=================欢迎使用音乐系统================="); System.out.println(); //while循环系统一直可以操作,知道输入0 while(true) { System.out.print("1:查看歌单"+" "); System.out.print("2:添加歌曲"+" "); System.out.println("0:退出 "); System.out.println(); System.out.println("请选择你要执行的操作"); //匿名类创建键盘输入对象 ,获取键盘输入 Scanner sc= new Scanner(System.in); int input = sc.nextInt(); switch(input) { case 1: //调用查看歌单方法 System.out.println("*********************查看歌单*********************"); musicList.musicPrint(); System.out.println("================================================"); break; case 2: //调用添加歌曲方法 System.out.println("*********************添加歌曲*********************"); musicList.musicAdd(); System.out.println("================================================"); break; case 0: System.out.println("******************欢迎下次使用,再见!****************"); return; default : System.out.println("!!!!!!!输入序号有误,重新选择!!!!!!"); break; } } } } }

huangtian LV3
2023年6月24日
微信网友_6297217905807360 LV2
2023年1月9日
15342201772 LV9
2022年12月4日
18871201024 LV4
2022年12月2日
微信网友_6013389878005760 LV3
2022年9月19日
sxgszx LV1
2022年6月17日
Rommel LV27
2021年6月26日
最代码官方 LV168
2021年6月19日