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("你输入的编号不存在");
}
}