day08

超市管理系统:

  功能: 实现简单的增、删、改、查,自定义商品列表类

package com.tedu.demo;

/*
 * 自定义类FruitItem,
 * 商品编号  ID;
 * 商品名字  String
 * 商品单价  price
 * 商品数量   number
 *
 */

public class FruitItem {
    int ID;
    String name;
    double price;
    int number;
    double money;
}
  1 package com.tedu.demo;
  2
  3 import java.util.ArrayList;
  4 import java.util.Scanner;
  5
  6 public class FruitStore_1 {
  7
  8     /**
  9      * ? 1.完成超市商品初始化。创建商品,将商品添加到集合 ?
 10      *       2.显示来到超市能做的操作,也就是显示主菜单 ?
 11      *    3.根据接收到的功能选项,执行对应的功能 ?
 12      *            3.1.库存货物查询 ?
 13      *            3.2.添加新货物 ?
 14      *            3.3.删除货物 ?
 15      *            3.4.修改货物 ?
 16      *             3.5.退出系统,结束main方法的运行
 17      */
 18     public static void main(String[] args) {
 19         ArrayList<FruitItem> array = new ArrayList<FruitItem>();
 20         init(array);
 21
 22         chooseFunction(array);
 23
 24     }
 25
 26     // 定义方法实现修改货物功能
 27     public static void updateFruitItem(ArrayList<FruitItem> array) {
 28
 29         for (int i = 0; i < array.size(); i++) {
 30             Scanner scan = new Scanner(System.in);
 31             FruitItem item = array.get(i);
 32             System.out.println("请输入需要修改的ID:");
 33             if (item.ID == scan.nextInt()) {
 34                 System.out.println("请输入修改后的ID:");
 35                 item.ID = scan.nextInt();
 36                 System.out.println("请输入修改后的名字:");
 37                 item.name = scan.next();
 38                 System.out.println("请输入修改后的单价:");
 39                 item.price = scan.nextDouble();
 40                 System.out.println("请输入修改后的数量:");
 41                 item.number = scan.nextInt();
 42                 System.out.println("修改成功");
 43                 return;
 44             }
 45         }
 46     }
 47
 48     // 定义方法实现删除货物功能
 49     public static void delFruitItem(ArrayList<FruitItem> array) {
 50         Scanner sc = new Scanner(System.in);
 51         for (int i = 0; i < array.size(); i++) {
 52             FruitItem item = array.get(i);
 53             System.out.println("请输入要删除的商品编号:");
 54             if (item.ID == sc.nextInt()) {
 55                 array.remove(i);
 56                 System.out.println("删除成功");
 57                 return;
 58             }
 59         }
 60         System.out.println("没有该商品");
 61
 62     }
 63
 64     // 定义方法实现添加新货物功能
 65     public static void addFruitItem(ArrayList<FruitItem> array) {
 66
 67
 68             FruitItem item = new FruitItem();
 69             Scanner sc = new Scanner(System.in);
 70 //            System.out.println("你选择的是货物添加功能");
 71             System.out.println("请输入货物编号:");
 72             item.ID = sc.nextInt();
 73             System.out.println("请输入商品名字:");
 74             item.name = sc.next();
 75             System.out.println("请输入商品单价:");
 76             item.price = sc.nextDouble();
 77             System.out.println("请输入商品数量:");
 78             item.number = sc.nextInt();
 79             array.add(item);
 80             System.out.println("新商品添加成功");
 81
 82             return;
 83
 84
 85     }
 86
 87     // 定义方法实现功能选择
 88     public static void chooseFunction(ArrayList<FruitItem> array) {
 89         while (true) {
 90             mainMenu();
 91
 92             System.out.println("请输入你需要的功能的序号:");
 93             Scanner scan = new Scanner(System.in);
 94             int number = scan.nextInt();
 95             switch (number) {
 96             case 1:
 97                 showFruitList(array);
 98                 System.out.println();
 99                 break;
100             case 2:
101                 addFruitItem(array);
102                 System.out.println();
103                 break;
104             case 3:
105                 delFruitItem(array);
106                 System.out.println();
107                 break;
108             case 4:
109                 updateFruitItem(array);
110                 System.out.println();
111                 break;
112             case 5:
113                 return;
114             default:
115                 System.out.println("你输入的功能序号不存在");
116                 System.out.println();
117                 break;
118             }
119         }
120     }
121
122     // 定义方法实现菜单显示
123     public static void mainMenu() {
124         System.out
125                 .println("=========================欢迎光临itcast超市=========================");
126         System.out
127                 .println("\t\t1: 查询货物 \n\t\t2: 添加新货物\n\t\t3: 删除货物\n\t\t4: 修改货物");
128         System.out.println("\t\t5: 退出系统");
129         System.out
130                 .println("=========================欢迎光临itcast超市=========================");
131     }
132
133     // 定义方法实现库存货物查询
134     public static void showFruitList(ArrayList<FruitItem> array) {
135         System.out
136                 .println("=======================商品库存清单=======================");
137         System.out.println("商品编号\t\t商品名称\t\t商品单价\t\t商品数量");
138         for (int i = 0; i < array.size(); i++) {
139             FruitItem item = array.get(i);
140             System.out.println(item.ID + "\t\t" + item.name + "\t\t"
141                     + item.price + "\t\t" + item.number);
142
143         }
144     }
145
146     // 定义方法实现商品初始化;
147     public static void init(ArrayList<FruitItem> array) {
148         FruitItem item = new FruitItem();
149         FruitItem item1 = new FruitItem();
150         FruitItem item2 = new FruitItem();
151
152         item.ID = 9001;
153         item.name = "少林寺核桃";
154         item.price = 34.2;
155         item.number = 20;
156
157         item1.ID = 9002;
158         item1.name = "新疆哈密瓜";
159         item1.price = 26.2;
160         item1.number = 10;
161
162         item2.ID = 9003;
163         item2.name = "尚康牡丹饼";
164         item2.price = 20.8;
165         item2.number = 6;
166
167         array.add(item);
168         array.add(item1);
169         array.add(item2);
170
171     }
172
173 }
时间: 2024-12-25 18:56:13

day08的相关文章

python开发学习-day08(socket高级、socketserver、进程、线程)

s12-20160305-day08 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* BLOCKS =============================================================================*/ p, blockquote, ul, ol, dl, table, pre { margin

day08(异常处理,创建异常,finally,throws和throw的区别)

异常处理, 异常的产生  运行时异常:程序运行中产生的异常:RuntimeException类.   编译时异常:程序在编译时产生的异常:除了RuntimeException类  其他都是编译时产生的异常.    处理异常两种方式 抛出异常:把异常抛给调用者区解决   throws 抛出异常 捕获异常:编程者自己处理try....catch...finally... 创建异常, 1.自己创建sun公司的异常类对象 public class ClassException { public stat

Python面向对象进阶和socket网络编程-day08

写在前面 上课第八天,打卡: 为什么坚持?想一想当初: 一.面向对象进阶 - 1.反射补充 - 通过字符串去操作一个对象的属性,称之为反射: - 示例1: class Chinese: def __init__(self,name): self.name=name p = Chinese('standby') # 实例化一个对象 print(p) # 打印这个对象 --- <__main__.Chinese object at 0x0000000000B3A978> - 示例2: >&g

标C编程笔记day08~day10代码规范、编译、库函数、命名空间、函数调用、哑元函数

代码编写规范,命令行编译,库函数简介,命名空间介绍,函数调用介绍,哑元函数介绍 一般来说,有.c实现文件,应该都要有.h头文件,.c文件中的所有函数都应该在.h文件中声明. 命令行编译方法: 1.gcc 后面带所有.c 文件 -o 输出文件名   直接生成可执行文件 2.依次gcc -c .c文件  -o ***.o  生成***.o文件 然后 gcc 所有.o文件 -o 输出文件   生成可执行文件 程序中的静态全局变量不可以被其他文件中的语句使用. .c文件使用.h文件中的全局变量:exte

Python 字符串day08

字符串是最 Python 总常用的数据类型.我们可以使用引号来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello World!' var2 = "Python Programming" Python访问字符串中的值 Python不支持单字符类型,单字符也在Python也是作为一个字符串使用. Python访问子字符串,可以使用方括号来截取字符串,如下实例: #!/usr/bin/python var1 = 'Hello World!' var2

C++MFC编程笔记day08 MFC对话框的使用

一 MFC对话框 1 分类 模式和非模式 2 相关类 CDialog类-父类是CWnd,本质上是一个窗口,对话框类的父类. CCommonDialog类以及子类-通用对话框,颜色对话框.文件对话框. 查找替换对话框.字体设置对话框.打印设置对话框和 打印对话框. CPropertyPage类-属性页对话框. 3 在Win32向导中,使用MFC的类创建对话框程序 3.1 模式对话框 3.1.1 创建和显示对话框 CDialog::DoModal() 3.1.2 对话框的关闭(无需用户处理) CDi

day08 JSP

day08 JSP 1. jsp 入门和 jsp 运行原理 2. jsp 语法 2.1 jsp 模板元素:jsp 页面中的 html 内容.它定义了网络基本骨架,即定义了页面结构和外观. 2.2 jsp 脚本表达式:<%= %>,作用是用于向浏览器输出数据. 2.3 jsp 脚本片段: 2.4 jsp 声明 2.5 jsp 注释 2.6 jsp 指令 2.7 jsp 的乱码问题解决 2.8 jsp 语法 - include 指令 3. jsp 九大隐式对象简介 3.1 jsp 九大隐式对象 -

day08 网络编程

Socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. socket起源于Unix,而Unix/Linux基本哲学之一就是"一切皆文件",对于文件用[打开][读写][关闭]模式来操作.socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO.打开.关闭) socket和file的区别: fil

day08 网络设置、软件包管理

网络设置 1 ifconfig //最小化安装时不可用,需要安装安装包,命令为查看网卡信息 2 yum install net-tools 3 4 mtu 网卡的最大发送字节 5 6 iptables -F 清掉防火墙配置 7 setenforce 0 表示临时关闭selinux防火墙 8 9 10 ifconfig eno16777736(网卡号) 192.168.103/24 11 12 ifconfig eno16777736:0(虚拟出一块网卡) 192.168.16.104//24 1