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

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
Python requests库
requests是一个用于在程序中进行http协议下的get和post请求的库。 安装 easy_install requests 或者用 pip install requests 安装好之后在交互模式下运行 >>> import requests >>> dir(requests) ['ConnectionError', 'HTTPError', 'NullHandler', 'PreparedRequest', 'Request', 'RequestException', 'Response', 'Session', 'Timeout', 'TooManyRedirects', 'URLRequired', '__author__', '__build__', '__builtins__', '__copyright__', '__doc__', '__file__', '__license__', '__name__', '__package__', '__path__', '__title__', '__version__', 'adapte...
-
下一篇
JAVA学习day09
1、面向过程与面向对象的思想面向对象: 我该让谁来做面向过程: 我该怎么做 2、大象装冰箱我们把大象装冰箱为例进行分析。在针对具体的需求,可以使用名词提炼的办法进行分析,寻找具体的对象。需求:把大象装冰箱里对象:大象、冰箱分三步:1、打开冰箱门2、将大象装进去3、关闭冰箱门分析发现打开、装、关闭都是冰箱的功能。即冰箱对象具备如下功能:冰箱打开冰箱存储冰箱关闭用伪代码描述,上述需求中有两个具体的事物 大象 和 冰箱描述大象:class 大象{}描述冰箱class冰箱{void 打开(){}void 存储(大象){}void 关闭(){}}当把具体的事物描述清楚之后,需要使用这些具体的事物,Java使用具体的事物,需要通过new关键字来创建这个事物的具体实例。使用对象:1、创建冰箱的对象冰箱 bx = new 冰箱(); 2、调用冰箱的功能对象.功能();bx.打开();bx.存储(new 大象());bx.关闭(); 总结:1、先按照名词提炼问题领域中的对象2、对对象进行描述,其实就是在明确对象中应该具备的属性和功能3、通过new的方式就可以创建该事物的具体对象4、通过该对象调用它以后...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- Hadoop3单机部署,实现最简伪集群
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2全家桶,快速入门学习开发网站教程
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Docker快速安装Oracle11G,搭建oracle11g学习环境