Java傻瓜式学习第六天
复习昨天的内容
(1)水仙花数
- 什么是水仙花数------一个数------他的个位的三次方加上他的十位的三次方加上他的百位的三次方等于这个数
- 构思程序,拆解步骤,逐步实现
- 运行程序,删繁就简,优化
(2)九九乘法表
- 什么是九九乘法表(长什么样子)
- 思考需要达到这个效果,该怎样实现
- 验证代码,思考不一样的东西(九九乘法表倒序)
(3)键盘录入五个数,存入数组,从数组中取出这五个数,求这五个数的最大值,最小值
-
怎样键盘录入------运用Scanner控制台输入函数
-
什么东西可以存多个数据--------集合、队列、栈、数组(我目前只会数组)
-
怎么样取出这五个数
直接取:System.out.print();
循环取值:运用for循环(条件1;条件2;条件3){} 注意:条件2中<arr.length -
怎么样输出最大值/最小值------定义最大值/最小值=arr[0],后面加上循环结构,如果最大值/最小直 小于/大于 arr[]中其他的数,将那个数赋值给最大值/最小值,否则不变。循环结束后输出即可。
今日内容
数据管理(实现数据的增删改查)
(1)新建项目
(2)实现菜单
(3)实现人机交互Scanner
(4)实现用户选择
(5)将必要的部分加入循环
(6)增加数据
System.out.println("请输入需要录入的数据:");
int num= sc.nextInt();
//这里需要找到一个容器来存数,所以在最前面定义数组datas
for (int i=0;i< datas.length;i++){
if (datas[i]==0){
datas[i]=num;//循环找数组第一个空位并存数
System.out.println("录入的数据成功!");
break;//存完数,添加数据成功,跳出循环
}
}
(7)删除数据
System.out.println("请输入需要删除的数据");
int num= sc.nextInt();
for (int i=0;i< datas.length;i++){
if (datas[i]==num){
datas[i]=0;//循环查询需要删除的数据,并删除
System.out.println("删除的数据成功!");
break;//删除数据成功,跳出循环
}
}
(8)修改数据
System.out.println("请输入需要修改的数据");
int num= sc.nextInt();
for (int i=0;i< datas.length;i++){
if(datas[i]==num){
System.out.println("请输入需要修改为的数据");
datas[i]= sc.nextInt();//录入输入的数据,也就是修改后的数据
System.out.println("修改数据成功!");
break;//修改数据成功,跳出循环
}
}
(9)查看数据
System.out.println("查看数据");
for (int i=0;i< datas.length;i++){
if (datas[i]!=0){
System.out.println(datas[i]);
}
}//循环结构将数列datas中不为空
(10)退出系统
System.out.println("退出系统成功!");
System.exit(1);
这里面加入我不少我个人的优化,为的是让用户拥有更佳的体验
整体代码
package yjnboke6;
import java.util.Scanner;
public class 数据管理 {
//需求:实现增删改查
public static void main(String[] args) {
int[] datas=new int[100];//我还没学动态数组,这里定义一个长度为100的数组
System.out.println("欢迎进入数据管理系统!");
//实现菜单
for (; ; ) {
System.out.println("1.增加数据");
System.out.println("2.删除数据");
System.out.println("3.修改数据");
System.out.println("4.查看数据");
System.out.println("5.退出系统");
System.out.println("请输入1~5");
//实现人机交互
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
//实现用户选择
if (a == 1) {
System.out.println("请输入需要录入的数据:");
int num= sc.nextInt();
//这里需要找到一个容器来存数,所以在最前面定义数组datas
for (int i=0;i< datas.length;i++){
if (datas[i]==0){
datas[i]=num;//循环找数组第一个空位并存数
System.out.println("录入的数据成功!");
break;//存完数,添加数据成功,跳出循环
}
}
} else if (a == 2) {
System.out.println("请输入需要删除的数据");
int num= sc.nextInt();
for (int i=0;i< datas.length;i++){
if (datas[i]==num){
datas[i]=0;//循环查询需要删除的数据,并删除
System.out.println("删除的数据成功!");
break;//删除数据成功,跳出循环
}
}
} else if (a == 3) {
System.out.println("请输入需要修改的数据");
int num= sc.nextInt();
for (int i=0;i< datas.length;i++){
if(datas[i]==num){
System.out.println("请输入需要修改为的数据");
datas[i]= sc.nextInt();//录入输入的数据,也就是修改后的数据
System.out.println("修改数据成功!");
break;//修改数据成功,跳出循环
}
}
} else if (a == 4) {
System.out.println("查看数据");
for (int i=0;i< datas.length;i++){
if (datas[i]!=0){
System.out.println(datas[i]);
}
}//循环结构将数列datas中不为空的全部打印出来
} else if (a == 5) {
System.out.println("退出系统成功!");
System.exit(1);
} else {
System.out.println("输入信息有误,请重新输入");
}
}
}
}