面向对象(java菜鸟的课堂笔记)
import java.util.*; //调包
public class Main{ //建一个主类
static Scanner sc = new Scanner(System.in);
static int i = 0;
static Chaoshi[] shop = new Chaoshi[100];
public static void main(String[] args){ //主入口
menu(); //调用菜单方法
}
public static void menu(){ //定义一个菜单方法
System.out.println("============================");
System.out.println("》欢迎进入超市库存统计系统《");
System.out.println("=》 请输入对应数字进行操作《");
System.out.println("=======》 1,进货存储 《");
System.out.println("=======》 2,修改信息 《");
System.out.println("=======》 3,查询库存 《");
System.out.println("=======》 4,退出操作系统 《");
System.out.println("============================");
int a = sc.nextInt(); //用户输入
switch (a){
case 1:adds(); break;
case 2:update(); break;
case 3:select(); break;
case 4:exit(); break;
default:System.out.println("====输入有误,请重新输入====");
menu();
break;
}
}
public static void adds(){ //定义一个存货方法
System.out.println("=========请输入货物名称=========");
String sname = sc.next();
System.out.println("=========请输入货物类型=========");
String sclass = sc.next();
System.out.println("=========请输入货物价格=========");
String sprice = sc.next();
System.out.println("=========请输入货物数量=========");
String snum = sc.next();
Chaoshi shop1 = new Chaoshi(sname,sclass,sprice,snum);
shop[i] = shop1;
i++;
System.out.println("输入成功,继续输入(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
adds();
}else menu();
}
public static void update(){ //定义一个修改方法
System.out.println("请输入商品名称,为您修改");
String b = sc.next();
for(i=0;i<100;i++){
if(b.equals(shop[i].sname)){
System.out.println("===================查询结果如下===================");
shop[i].say();
System.out.println("=========请输入修改后货物名称=========");
String sname = sc.next();
System.out.println("=========请输入修改后货物类型=========");
String sclass = sc.next();
System.out.println("=========请输入修改后货物价格=========");
String sprice = sc.next();
System.out.println("=========请输入修改后货物数量=========");
String snum = sc.next();
Chaoshi shop1 = new Chaoshi(sname,sclass,sprice,snum);
shop[i] = shop1;
System.out.println("继续修改(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
update();
}else menu();
}
}
}
public static void select(){ //定义一个查询方法
System.out.println("指定查询(1),全部查询(2)");
int a = sc.nextInt();
if(a==1){
System.out.println("请输入商品名称,为您查询");
String b = sc.next();
for(i=0;i<100;i++){
if(b.equals(shop[i].sname)){
System.out.println("===================查询结果如下===================");
shop[i].say();
System.out.println("继续查询(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
select();
}else menu();
}
}
}else{
for(Chaoshi s:shop){
if(s!=null){
s.say();
}
}
System.out.println("继续查询(1),返回菜单(2)");
int flage = sc.nextInt();
if(flage==1){
select();
}else menu();
}
}
public static void exit(){ //定义一个退出方法
System.out.println("===》》》您已退出操作系统《《《===");
System.exit(0);
}
}
public class Chaoshi{ //新建一个超市类
String sname;
String sclass;
String sprice;
String snum;
public Chaoshi(String sname,String sclass,String sprice,String snum){
this.sname = sname;
this.sclass = sclass;
this.sprice = sprice;
this.snum = snum;
}
public void say(){
System.out.println("名称:"+sname+"\n种类:"+sclass+"\n价格:"+sprice+"\n数量:"+snum+"\n"); //定义一个输出方式
}
}
面向对象(java菜鸟的课堂笔记)的更多相关文章
- 泛型(java菜鸟的课堂笔记)
1. 泛型的简单运 用和意义 2. 泛型的上限与下限 3. 泛型和 子类继承的限制 4. 泛型类和泛型 方法 5. 泛型嵌套和泛型擦除 ...
- java中的一些规则(菜鸟的课堂笔记)
ls 查看目录下文件 java规则 代码都定义在类中,用class定义 禁止一个源文件写两个类: 一个源文件中,只能有一个类文件是pubic: 一个源文件中如果有多个类,编译完之后会产生多个class ...
- C#面向对象编程基础-喜课堂笔记
**************[5][C#面向对象编程基础]第1讲:类与对象**************** *************2.1.1_类与对象的概念**** ...
- java GUI (课堂笔记)
关于java GUI Swing组件: JFrame 窗口组件 JLabel 标签 JButton 按钮组件 JTextField 单行文本框 系统控件(JDK自带) 自定义控件(模仿系统控件): 继 ...
- Java基础进阶:内部类lambda重点摘要,详细讲解成员内部类,局部内部类,匿名内部类,Lambda表达式,Lambda表达式和匿名内部类的区别,附重难点,代码实现源码,课堂笔记,课后扩展及答案
内部类lambda重点摘要 内部类特点: 内部类可以直接访问外部类,包括私有 外部类访问内部类必须创建对象 创建内部对象格式: 外部类.内部类 对象名=new外部类().new内部类(); 静态内部类 ...
- 线程(java课堂笔记)
1.两种方式的差异 2.线程的生命周期 3.线程控制(线程的方法) 4.线程同步 5.线程同步锁 一. 两种方式的差异 A extends Thread :简单 不能再继承其他类了(Java单继承)同 ...
- Java课堂笔记(零):内容索引
回想自己学习和使用Java的时间也是很长了.本科期间课堂上浅尝辄止地学习了点皮毛,后来也是搁置不用,未曾深入研究.研究生期间因为项目和实习的原因,基本算是重新拾起Java这门语言,并且接触到了Spri ...
- Java基础进阶:多态与接口重点摘要,类和接口,接口特点,接口详解,多态详解,多态中的成员访问特点,多态的好处和弊端,多态的转型,多态存在的问题,附重难点,代码实现源码,课堂笔记,课后扩展及答案
多态与接口重点摘要 接口特点: 接口用interface修饰 interface 接口名{} 类实现接口用implements表示 class 类名 implements接口名{} 接口不能实例化,可 ...
- 九章算法系列(#3 Binary Tree & Divide Conquer)-课堂笔记
前言 第一天的算法都还没有缓过来,直接就进入了第二天的算法学习.前一天一直在整理Binary Search的笔记,也没有提前预习一下,好在Binary Tree算是自己最熟的地方了吧(LeetCode ...
随机推荐
- 【R】正态检验与R语言
正态检验与R语言 1.Kolmogorov–Smirnov test 统计学里, Kolmogorov–Smirnov 检验(亦称:K–S 检验)是用来检验数据是否符合某种分布的一种非参数检验,通过比 ...
- User Browsing Model简介
搜索引擎的点击日志提供了很多有价值的query-doc相关性信息,但是这些信息是有偏的,因为对于用户没有点击过的doc,我们无法确定其是否真实地被用户浏览过.即日志中记录的展现信息与实际的展现信息之间 ...
- java多线程基本概述(二十)——中断
线程中断我们已经直到可以使用 interrupt() 方法,但是你必须要持有 Thread 对象,但是新的并发库中似乎在避免直接对 Thread 对象的直接操作,尽量使用 Executor 来执行所有 ...
- EF的DbSet属性的Where查询,注意事项
#1 Func<T,bool>与 Expression<Func<T,bool>>的区别 Func<T,bool>本身就是一个委托(delegate), ...
- 使用jquery的load方法设计动态加载,并解决浏览器前进、后退、刷新等问题
继上一篇 使用jquery的load方法设计动态加载,并解决被加载页面JavaScript失效问题 解决了后台业务系统的部分动态加载问题,然而该框架离正常的用户体验还存在一些问题,如:浏览器的前进.后 ...
- [ext4]空间管理 - 与分配相关的关键数据结构
在块分配机制中,涉及到几个主要的数据结构. 通过ext4_allocation_request描述块请求,然后基于块查找结果即上层需求来决定是否执行块分配操作. 在分配过程中,为了更好执行分配, ...
- 转载 ~shell简介
Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的.Shell既是一种命令语言,又是一种程序设计语言.作为命令语言,它交互式地解释 ...
- 全球移动互联网大会gmic 2017为什么值得参加?
长城会CEO郝义认为,"科学产业化将会推动科学复兴,"而本次GMIC 北京 2017也将首次引入了高规格科学家闭门峰会,专门设置G-Summit全球科学创新峰会,以"科学 ...
- O(nlogn)实现LCS与LIS
序: LIS与LCS分别是求一个序列的最长不下降序列序列与两个序列的最长公共子序列. 朴素法都可以以O(n^2)实现. LCS借助LIS实现O(nlogn)的复杂度,而LIS则是通过二分搜索将复杂度从 ...
- python3 time模块与datetime模块
time模块 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平 ...