JAVA学习day08

1、快捷键

Alt+/    自动补全
写程序的时候,之写出一部分
输出   syso
类名 Scanner
起名字  如Int 按下alt+/会帮你带出变量

Ctrl+Shift+F    代码格式化

Ctrl+/    单行注释       取消单行注释就再按一次

Ctrl+Shift+/  多行注释
Ctrl+Shift+\   取消多行注释

Ctrl+Shift+o   导入包的快捷键

Alt+上下箭头    移动当前行代码

Ctrl+alt+上下箭头    复制当前代码行

Ctrl+D   删除当前行

Ctrl+1   意见提示功能

2、调试代码

• 断点: 就是一个标记
• 如何设置断点
    ○ 代码区域左边的空白位置 双击即可
• 在哪里加
    ○  想看哪个语句的执行结果就在该语句前面加
• 怎么运行断点的程序
    ○ 代码区域右键 -- Debug as -- Java Application
    ○ 显示一个页面,提示是否进入调试页面? 是否记住当前操作?是(Yes)是(勾选复选框)
        
• 弹出了断点页面
    
    ○ 点哪里
        § 点击 工具栏中的Step Over (执行下一行)
        § 快捷键F6 看到每一步程序的执行过程
    ○ 看哪里
        § 看代码区域: 对照看程序执行步骤
        § 看Debug区域: 对照看程序执行步骤
        § 看varable区域: 观察变量的创建、复制、销毁
    ○ 如何消除断点
        § 把设置断点的方式再执行一遍
        § 切换到Debug视图,选择 Breakpoints -- Remove All Breakpoints 就是2个XX的图标

3、超市管理系统案例分析
首先需要一个功能菜单,然后输入功能序号后,调用序号对应的功能方法,实现想要的操作。分析步骤如下
    ○ 1.完成超市商品初始化。创建商品,将商品添加到集合
    ○ 2.显示来到超市能做的操作,也就是显示主菜单
    ○ 3.根据接收到的功能选项,执行对应的功能
    ○ 3.1.库存货物查询
    ○ 3.2.添加新货物    
    ○ 3.3.删除货物
    ○ 3.4.修改货物
    ○ 3.5.退出系统,结束main方法的运行
    ○ 4.循环,回到 2.显示主菜单

定义FruitItem类

packagecom.ghy.studyday08;

/*
自定义类,描述商品信息
商品的属性
编号int
品名Strint
价格double
数量Int
总价double

*/
publicclassFruitItem{
//商品ID
intID;
//
Stringname;
//
doubleprice;
//
intnumber;
//
doublemoney;
}

定义Shopp类
packagecom.ghy.studyday08;

importjava.util.ArrayList;
importjava.util.Scanner;

/*
超市管理系统主页
实现:
1、商品数据的初始化
2、用户的菜单选择
3、根据选择执行不同的功能
3.1Read查看商品
3.2Create创建商品
3.3Delete删除商品
3.4Update更新商品

所有功能,必须定义方法实现
主方法main调用作用
*/
publicclassShopp{
publicstaticvoidmain(String[]args){
//创建ArrayList集合,存储商品类型,存输出剧类型FruitItemleixing
ArrayList<FruitItem>array=newArrayList<FruitItem>();
//调用商品初始化方法,传递集合
init(array);
while(true){
mainMenu();
intchoose=chooseFunction();
switch(choose){
case1:
showFruitList(array);
break;
case2:
addFruitItem(array);
break;
case3:
deleteFruit(array);
break;
case4:
updateFruit(array);
break;
case5:
return;

default:
System.out.println("输入的序号没有");
break;

}


}
}
/**
*定义方法,实现主菜单
*提示用户哪些选择,选择序号
*返回值:无
*参数:无
*
*
*/


publicstaticvoidmainMenu(){
System.out.println();
System.out.println("===========欢迎光临ITCast超市======================");
System.out.println("1、货物清单2、添加货物3、删除货物4、更新货物5、退出");
System.out.println("请您输入要操作的功能序号");

}
/**
*定义方法,实现接受用户的键盘输入
*返回编号
*/
publicstaticintchooseFunction(){
Scannersc=newScanner(System.in);
returnsc.nextInt();



}

/**
*定义方法,实现显示货物清单的功能
*返回值:无
*参数:集合
*遍历集合,获取集合中的每个FruitItem变量
*变量.调用属性
*/
publicstaticvoidshowFruitList(ArrayList<FruitItem>array){
System.out.println();
System.out.println("==========商品库存清单=========================");
System.out.println("商品编号商品名称商品单价");
//遍历集合
for(inti=0;i<array.size();i++){
//集合get方法,获取出每个FruitItem的变量,可以使用FruitItem接受get结果
FruitItemitem=array.get(i);
//变量item调用类属性
System.out.println(item.ID+""+item.name+""+item.price);

}
}

/**
*
*/




/**
*定还是那个方法,实现商品数据的初始化
*先将一部分数据,存储到集合中
*返回值:无
*参数:集合
*方法名:init
*
*/
publicstaticvoidinit(ArrayList<FruitItem>array){
//创建出多个FruitItem类型,并且属性赋值
FruitItemf1=newFruitItem();
f1.ID=9527;
f1.name="烧饼";
f1.price=12.7;

FruitItemf2=newFruitItem();
f2.ID=9528;
f2.name="米粉";
f2.price=22;

FruitItemf3=newFruitItem();
f3.ID=9830;
f3.name="*大盘鸡";
f3.price=100.6;

//将创建的3个FriutItem类型的变量,存储到集合中
array.add(f1);
array.add(f2);
array.add(f3);

}

/**
*定义方法,实现商品的添加功能
*返回值:无
*参数:集合
*提示用户选择的是商品的功能
*
*提示用户输入的是什么
*
*创建FruitItem变量,变量调用的属性
*将输入的每个商品属性进行赋值
*
*/

publicstaticvoidaddFruitItem(ArrayList<FruitItem>array){
System.out.println("您选择的是添加商品功能");
//创建Scanner变量
Scannersc=newScanner(System.in);
System.out.println("请输入商品的编号");
//输入商品的编号
intID=sc.nextInt();
//输入商品的名字
System.out.println("请输入商品的名字");
Stringname=sc.next();
//输入商品的单价
System.out.println("请输入商品的单价");
doubleprice=sc.nextDouble();
//创建FruitItem的变量
FruitItemitem=newFruitItem();
item.ID=ID;
item.name=name;
item.price=price;

array.add(item);


}

/*
*定义方法,实现商品的修改功能
*返回值:无
*参数: 集合
*
*提示用户选择的是修改功能
*提示用户输入需要修改的商品编号
*遍历集合,获取每个FruitItem变量
*变量调用ID属性,属性和用户输入的编号比较
*如果相同:
*修改调FruitItem中的属性值
*键盘输入
*/
publicstaticvoidupdateFruit(ArrayList<FruitItem>array){
System.out.println("选择的是修改功能");
System.out.println("请输入商品的编号");

Scannersc=newScanner(System.in);
intID=sc.nextInt();
//遍历集合,获取每个FruitItem变量
for(inti=0;i<array.size();i++){
FruitItemitem=array.get(i);
//获取FruitItem的属性ID,和用户输入的ID比较
if(item.ID==ID){
System.out.println("输入新的商品编号");
item.ID=sc.nextInt();

System.out.println("输入新的商品名字");
item.name=sc.next();

System.out.println("输入新的商品价格");
item.price=sc.nextDouble();
System.out.println("商品修改成功");
return;
}
}
System.out.println("输入的编号不存在");
}

/**
*定义方法,实现商品的删除功能
*返回值:无
*参数:集合
*
*删除依靠的是商品的编号
*提示用户选择的是删除功能
*键盘输入商品的编号
*遍历集合,获取集合中的每个FruitItem变量
*变量调用属性ID,和用户的输入的编号,对比,相同就删除
*/
publicstaticvoiddeleteFruit(ArrayList<FruitItem>array){
System.out.println("选择的是删除功能");
System.out.println("请输入商品的编号");
Scannersc=newScanner(System.in);

intID=sc.nextInt();
//遍历集合
for(inti=0;i<array.size();i++){
//获取到每个FruitItem变量
FruitItemitem=array.get(i);
//变量,调用属性ID,和用户输入的编号比较
if(item.ID==ID){
//移除集合中的元素
//集合的方法remove实现
array.remove(i);
System.out.println("删除成功");
return;
}
}
System.out.println("你输入的编号不存在");
}

}JAVA学习day08

上一篇:2018阿里云IoT极客创新挑战赛(GXIC)开启


下一篇:JAVA学习day09