java点歌系统_Java实现模拟KTV点歌系统
模拟KTV点歌系统
分别使用LinkedList和ArrayList集合,实现编写一个模拟KTV点歌系统的程序
KTVByArrayList.java
import java.util.ArrayList;
import java.util.Scanner;
public class KTVByArrayList {
public static void main(String[] args) {
int choice ;
ArrayList MusicList=new ArrayList();
Scanner scanner=new Scanner(System.in);
show();
Init(MusicList);
System.out.println("请输入你要执行的操作序号");
if(scanner.hasNextInt()) {
choice=scanner.nextInt();
}else {
choice=4;
}
while (choice!=3)
{
switch (choice) {
case (0):
addMusic(MusicList);
break;
case (1):
moveMusicFirst(MusicList);
break;
case (2):
moveMusicBefore(MusicList);
break;
default:
System.out.println("请输入0-2数字");
break;
}
show();
System.out.println("请输入你要执行的操作序号");
if(scanner.hasNextInt()) {
choice=scanner.nextInt();
}else {
choice=4;
}
System.out.println("当前歌曲列表:"+MusicList);
}
System.out.println("--------------------退出-----------------------");
System.out.println("你已退出系统");
}
static void show(){
System.out.println("------------------------欢迎来到点歌系统-----------------------------");
System.out.println("0.添加歌曲至列表");
System.out.println("1.将歌曲置顶");
System.out.println("2.将歌曲移至前一位");
System.out.println("3.退出");
}
static void Init(ArrayList MusicList)
{
MusicList.add("稻香");
MusicList.add("夜曲");
MusicList.add("夜的第七章");
MusicList.add("听妈妈的话");
MusicList.add("龙卷风");
System.out.println("初始歌曲列表:"+MusicList);
}
static void addMusic(ArrayList MusicList)
{
System.out.println("请输入你要添加的歌曲名称:");
Scanner scanner=new Scanner(System.in);
String MusicName=scanner.nextLine();
MusicList.add(MusicName);
System.out.println("已加入歌曲:"+MusicList.get(MusicList.size()-1));
System.out.println("当前歌曲列表"+MusicList);
}
static void moveMusicFirst(ArrayList MusicList)
{
System.out.println("请输入你要置顶歌曲的名称:");
Scanner scanner=new Scanner(System.in);
String MusicName=scanner.nextLine();
//判断有没有这首歌
for(Object i:MusicList)
{
if(i.equals(MusicName))
{
MusicList.remove(MusicName);
MusicList.add(0,MusicName);
System.out.println("已将歌曲"+MusicName+"置顶");
return;
}
}
System.out.println("没有这首歌");
}
static void moveMusicBefore(ArrayList MusicList)
{
System.out.println("请输入你要置前歌曲的名称:");
Scanner scanner=new Scanner(System.in);
String MusicName=scanner.nextLine();
//判断有没有这首歌
for(int i=0;i
{
if((MusicList.get(i)).equals(MusicName))
{
MusicList.add(i-1,MusicName);
MusicList.remove(i+1);
System.out.println("已将歌曲"+MusicList.get(0)+"置前");
return;
}
}
System.out.println("没有这首歌");
}
}
KTVByLinkedList.java
import java.util.LinkedList;
import java.util.Scanner;
public class KTVByLinkedList {
public static void main(String[] args) {
int choice ;
LinkedList MusicList=new LinkedList();
Scanner scanner=new Scanner(System.in);
show();
Init(MusicList);
System.out.println("请输入你要执行的操作序号");
if(scanner.hasNextInt()) {
choice=scanner.nextInt();
}else {
choice=4;
}
while (choice!=3)
{
switch (choice) {
case (0):
addMusic(MusicList);
break;
case (1):
moveMusicFirst(MusicList);
break;
case (2):
moveMusicBefore(MusicList);
break;
default:
System.out.println("请输入0-2数字");
break;
}
show();
System.out.println("请输入你要执行的操作序号");
if(scanner.hasNextInt()) {
choice=scanner.nextInt();
}else {
choice=4;
}
System.out.println("当前歌曲列表:"+MusicList);
}
System.out.println("--------------------退出-----------------------");
System.out.println("你已退出系统");
}
static void show(){
System.out.println("------------------------欢迎来到点歌系统-----------------------------");
System.out.println("0.添加歌曲至列表");
System.out.println("1.将歌曲置顶");
System.out.println("2.将歌曲移至前一位");
System.out.println("3.退出");
}
static void Init(LinkedList MusicList)
{
MusicList.add("稻香");
MusicList.add("夜曲");
MusicList.add("夜的第七章");
MusicList.add("听妈妈的话");
MusicList.add("龙卷风");
System.out.println("初始歌曲列表:"+MusicList);
}
static void addMusic(LinkedList MusicList)
{
System.out.println("请输入你要添加的歌曲名称:");
Scanner scanner=new Scanner(System.in);
String MusicName=scanner.nextLine();
MusicList.add(MusicName);
System.out.println("已加入歌曲:"+MusicList.getLast());
System.out.println("当前歌曲列表"+MusicList);
}
static void moveMusicFirst(LinkedList MusicList)
{
System.out.println("请输入你要置顶歌曲的名称:");
Scanner scanner=new Scanner(System.in);
String MusicName=scanner.nextLine();
//判断有没有这首歌
for(Object i:MusicList)
{
if(i.equals(MusicName))
{
MusicList.remove(MusicName);
MusicList.addFirst(MusicName);
System.out.println("已将歌曲"+MusicList.getFirst()+"置顶");
return;
}
}
System.out.println("没有这首歌");
}
static void moveMusicBefore(LinkedList MusicList)
{
System.out.println("请输入你要置前歌曲的名称:");
Scanner scanner=new Scanner(System.in);
String MusicName=scanner.nextLine();
//判断有没有这首歌
for(int i=0;i
{
if((MusicList.get(i)).equals(MusicName))
{
MusicList.add(i-1,MusicName);
MusicList.remove(i+1);
System.out.println("已将歌曲"+MusicName+"置前");
return;
}
}
System.out.println("没有这首歌");
}
}
java点歌系统_Java实现模拟KTV点歌系统相关推荐
- java学习:模拟KTV点歌系统
[目标] 学会分析"模拟KTV点歌系统"程序设计的实现思路. 根据思路独立完成"模拟KTV点歌系统"程序设计的源代码编写.编译及运行. 掌握ArrayList集 ...
- Java 使用LinkedList模拟KTV点歌系统,首先先添加若干歌曲,如果歌曲列表中已有该歌曲,则不加入,否则追加。`然后选择列表中的其中一首置顶,最后选择列表中一首歌曲前置一位。
使用LinkedList模拟KTV点歌系统 该系统的任务是执行3个操作:首先先添加若干歌曲,如果歌曲列表中已有该歌曲,则不加入,否则追加.`然后选择列表中的其中一首置顶,最后选择列表中一首歌曲前置一位 ...
- Java实现模拟KTV点歌系统
模拟KTV点歌系统 分别使用LinkedList和ArrayList集合,实现编写一个模拟KTV点歌系统的程序 KTVByArrayList.java import java.util.ArrayLi ...
- java基于ssm+vue的的KTV点歌歌曲播放系统 element
KTV点歌系统的后台开发目标是以信息管理系统的管理和开发方法,用目前现有的新技术进行系统开发,提供后台管理员高度友好的界面操作以及迅捷的信息处理.而前台的开发目标是以用户的需求作为主导,提供对用户而言 ...
- 音创a55怎么安装系统_音创ktv点歌系统_音创点歌机怎么样_音创ktv点歌系统a55
音创KTV点歌系统是一款非常易用的电脑KTV点歌软件.本软件能够帮助KTV经营商非常方便地大点KTV点歌管理系统,同时也很适合家庭个人用户使用,支持海量的视频.音频格式,拥有全面的点歌功能. 1.点歌 ...
- Java基于JSP的网络音乐KTV点歌电台网站
随着我国网民的增加,也促进了网络音乐电台的开发.随着网络技术的发展,人们在利用网络学习的同时,也在享受着网络带来的各种附带产品所产生的效应,如网络游戏,网络歌曲.网络音乐电台正是在这样的需求前提下应运 ...
- java模拟KTV点歌系统
上面的案例启示是对集合类的一个巩固,代码如下: package cn.csdn.ktv;import java.util.LinkedList; import java.util.Scanner;pu ...
- java门禁系统_java项目:门禁系统
门禁系统 门禁系统:包和文件划分 system包 Computer.java package com.handson.sys; import com.handson.validate.CardVld; ...
- java环形数组_Java数组模拟环形队列
1.假溢出 系统作为队列用的存储区还没有满,但队列却发生了溢出,我们把这种现象称为"假溢出". 因为队列遵从从队尾存入数据,从队头取数据,所以红框部分的空间就不能继续存入新的数据 ...
- java电影定票系统_Java实现电影院订票系统代码
程序是为了方便用户使用的,因此实现图形化界面的程序编写是所有编程语言发展的必然趋势...但是由于时间原因,小编并未在代码中添加可视化图形界面,有兴趣的朋友可自行添加. 可参阅:Java图形化界面设计之 ...
最新文章
- FPGA+DSP SRIO通信(一)——DSP端参数设置(通道)
- R语言实战应用精讲50篇(十八)-R语言实现分词、词频与词云案例解析
- android显示服务器端文件夹,Android上传文件到服务端并显示进度条
- ring0 ring3 kernel driver
- git version是什么软件_Deepin 15.11 安装 ZoneMinder 视频监控软件
- [JS] IE下ajax请求不生效或者请求结果不更新
- 《RabbitMQ 实战指南》第三章 客户端开发向导
- LeetCode刷题(34)-Rotate List
- 2014-07-22 如何成为一名合格的职业人士
- js中运算符的优先级
- 联想启天M439E BIOS升级为F1KT74AUS
- ir2110s驱动工作原理
- 双人对战的球类游戏ios源码项目
- 深度学习系列之Anchor based 和 Anchor free 目标检测方法
- JavaEE | 集合2之Map
- 微信公众平台测试账号申请
- protobuf 3.5 java使用介绍(二)
- 多御安全浏览安卓版升级尝鲜,新增下载管理功能
- 全球首发!惯性导航导论(剑桥大学)第三部分
- 简单的YouTube菜单效果
热门文章
- excel如何去重统计户数_Excel如何去重,然后统计数据?_excel提取数据并去重
- 管理驾驶舱,老板的数据看板,移动报表,让数据更直观
- es3,es5语法记要
- Docker1.8 官方中文文档
- 定量/高光谱遥感之——光谱分析技术
- python 序列类型是二维元素向量,测验6: 组合数据类型 (第6周)
- 三种方法求解Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1,当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。
- CentOS 7.4 初次手记:第三章 CentOS基础了解
- 洞察Tungsten Fabric内部的XMPP
- 服务器磁盘配置信息,服务器磁盘阵列配置