JAVA SE — Day 08

目 录

第1章 Eclipse的补充
1.1 Eclipse的快捷键
1.2 Eclipse的断点调试
1.3 Eclipse的工程删除和导入
第2章 超市库存管理系统
2.1 自定义商品类
2.2 初始化商品属性
2.3 主菜单功能
2.4 用户选择功能
2.5 商品清单功能
2.6 商品添加功能
2.7 商品删除功能
2.8 商品修改功能
2.9 完整代码

第1章 Eclipse的补充

1.1 Eclipse的快捷键
  • a: 内容辅助键 Alt+/
        * 自动补齐main方法  main 然后 Alt+/
        * 自动补齐输出语句  sout 然后 Alt+/
  • b: 格式化代码
        * Ctrl+Shift+f
        * 代码区域右键 -- Source  Format
  • c: 自动导包
        * Ctrl+Shift+o
        * 如果当前类在多个包中都存在,这时候,使用Ctrl+shift+o,进行选择一个包导入即可。
  • d: 注释
        * 单行注释:
                * 加注释: 先选中需要注释的内容,然后 Ctrl+/
                * 取消注释:先选中需要取消注释的内容, 然后 Ctrl+/
        * 多行注释:
                * 加注释: 先选中需要注释的内容,然后 Ctrl+Shift+/
                * 取消注释:先选中需要取消注释的内容, 然后 Ctrl+Shift+\
    * e: 补充
            * 代码上下移动
                * 选中代码alt+上/下箭头
            * 查看源码
                * 选中类名(F3或者Ctrl+鼠标点击)
            * 查找具体的类 
                * ctrl + shift + t,输入要查找的类的名称-->确定
            * 查找具体类的具体方法 
                * ctrl + o
            * 给建议 
                * ctrl+1,根据右边生成左边的数据类型,生成方法
            * 删除代码 
                * ctrl + d
            * 抽取方法
                * alt + shift + m 
            * 改名
                * alt + shift + r(类名,方法名,变量名) 
1.2Eclipse的断点调试

1)断点调试(又称为Debug调试)的作用
* 调试程序
* 查看程序执行流程
2)如何查看程序执行流程

    * 如何设置断点:
        * 你想看哪里的程序,你就在那个有效程序的左边序号栏双击即可。

这里写图片描述

    * 如何运行设置断点后的程序:
        * 右键 -- Debug as -- Java Application

    * 看哪些地方:
        * Debug:断点测试的地方
            * 在这个地方,记住F6,或者点击也可以。一次看一行的执行过程。
        * Variables:查看程序的变量变化
        * ForDemo:被查看的源文件
        * Console:控制台

这里写图片描述

* 如何去断点:
        * a:再次双击即可
        * b:找到Debug视图,Variables界面,找到Breakpoints,并点击,然后看到所有的断点,最后点击那个双叉      
1.3 Eclipse的工程删除和导入

1)删除项目

    * 选中项目 – 右键 – 删除
    * 从项目区域中删除
    * 从硬盘上删除

2)导入项目

    * 在项目区域右键找到import
    * 找到General,展开,并找到
    * Existing Projects into Workspace
    * 点击next,然后选择你要导入的项目
    * 注意:这里选择的是项目名称

第2章 超市库存管理系统

A:超市管理系统功能介绍
* a: 显示主菜单

        ============欢迎光临ItCast超市============
        1: 货物 清单   2: 添加货物   3: 删除货物   4: 修改货物  5: 退出
        请您输入要操作的功能序号

    * b: 货物清单

        输入1:货物清单
        ================商品库存清单================
        商品编号         商品名称                商品单价
        9527            少林寺酥饼核桃            12.7
        9008            尚康杂粮牡丹饼            5.6
        9879            新疆原产哈密瓜             599.6

    * c: 添加新货物

        输入2:添加新货物   

        请输入新商品的编号:9523
        请输入新商品的名字:斯柯达苹果醋
        请输入新商品的单价:19.9
        商品添加成功

    * d: 删除货物

        输入3:删除货物

        选择的是删除功能
        请输入商品的编号:9523
        货物信息删除完毕

    * e: 修改货物

        输入4:修改货物

        选择的是修改功能
        请输入您要修改的商品的编号:9527
        输入新的商品编号:100
        输入新的商品名字:味道好凤梨干
        输入新的商品价格:6.5
        商品修改成功
    * f: 输入5:退出系统
2.1 自定义商品类
/*
 * 自定义类,描述商品信息
 * 商品属性:
 *        编号,int
 *        品名,String
 *        价格,double
 *        数量,int
 *        总价,double
 *
 * 商品类型最终是要存储到ArrayList中应用的
 */
public class FruitItem {

    int ID;

    String name ;

    double price;

    int number ;

    double money ;


}
2.2 初始化商品属性
import java.util.ArrayList;
public class Shopping {
     public static void main(String[] args) {

        //创建ArrayList集合,存储商品类型,存储数据类型FruitItem类型
        ArrayList<FruitItem> array = new ArrayList<FruitItem>();
        //调用初始化方法,传递集合
        init(array);
        //System.out.println(array); 输出结果为索引地址为正确 
     /*
      * 定义方法,实现商品数据的初始化
      * 先将部分数据存储于集合之中
      * 返回值:无
      * 参数:集合
      * 方法名:init
      */
     private static void init(ArrayList<FruitItem> array) {
       //创建多个FruitItem类型,并且属性赋值
        FruitItem f1 = new FruitItem();
        f1.ID = 9527;
        f1.name = "少林寺酥饼核桃";
        f1.price = 12.7;

        FruitItem f2 = new FruitItem();
        f2.ID = 9008;
        f2.name = "尚康杂粮牡丹饼";
        f2.price =5.6;

        FruitItem f3 = new FruitItem();
        f3.ID = 9870;
        f3.name = "新疆原产哈密瓜";
        f3.price =599.6;
        //把创建的3个FruitItem类型变量,存储到集合中
        array.add(f1);
        array.add(f2);
        array.add(f3);

    }
  }
 }    
2.3 主菜单功能
/*
 * 定义方法,实现主菜单
 * 返回值:无
 * 参数:无
 */
     public static void mainMenu() {
        System.out.println("==============欢迎光临ItCast超市=================");
        System.out.println("1:货物清单 2:添加货物 3: 删除货物  4: 修改货物  5: 退出");
        System.out.println("请输入您需要的功能序号:");
    }
    private static void init(ArrayList<FruitItem> array) {
       //创建多个FruitItem类型,并且属性赋值
        FruitItem f1 = new FruitItem();
        f1.ID = 9527;
        f1.name = "少林寺酥饼核桃";
        f1.price = 12.7;

        FruitItem f2 = new FruitItem();
        f2.ID = 9008;
        f2.name = "尚康杂粮牡丹饼";
        f2.price =5.6;

        FruitItem f3 = new FruitItem();
        f3.ID = 9870;
        f3.name = "新疆原产哈密瓜";
        f3.price =599.6;
        //把创建的3个FruitItem类型变量,存储到集合中
        array.add(f1);
        array.add(f2);
        array.add(f3);

    }
2.4 用户选择功能

import java.util.Scanner;

        while (true) {
            //调用菜单方法
            mainMenu();
            //调用选择序号方法
            int choose = chooseFunction();
            switch (choose) {
            case 1:
                //调用1货物清单
                break;
            case 2:
                //调用2添加货物
                break;  
            case 3:
                //调用3删除货物
                break;  
            case 4:
                //调用4修改货物
                break;
            case 5:
                return ;        

            default:
                System.out.println("您输入的功能不存在");
                break;
            }

        }

/*
 *定义方法,实现接受用户的键盘输入 
 * 返回编号
 */
     public static int chooseFunction() {
         Scanner sc = new Scanner (System.in);
         return sc.nextInt();
     }
2.5 商品清单功能
  /*
   *定义方法,实现货物清单功能
   *返回值:无
   * 参数:集合
   * 遍历集合,获取集合中的每一个FruitItem变量,调用属性
   */  
   public static void showFruitList(ArrayList<FruitItem> array) {
       System.out.println();
       System.out.println("============商品库存清单============");
       System.out.println("商品编号             商品名称              商品单价");
       //遍历集合
       for(int i =0; i<array.size();i++) {
          //通过集合get方法,获取FruitItem变量  
          FruitItem item = array.get(i);
          //变量item调用类中属性
          System.out.println(item.ID +"  "+item.name+"    "+item.price);

       }

    }  
2.6 商品添加功能
 /*
    * 定义方法,实现货物添加功能
    * 返回值:无
    * 参数:集合
    * 提示用户选择的是添加功能
    * 提示用户添加的内容是什么
    * 创建FruitItem变量,变量调用的属性
    * 将输入的每个商品的属性进行赋值
    */    
    public static void addFruit (ArrayList<FruitItem> array) {
        System.out.println("选择的是添加商品功能");
        //创建Scanner变量
        Scanner sc = new Scanner (System.in) ;
        //输入编号
        System.out.println("请输入商品的编号");
        int number = sc.nextInt();
        //输入名字
        System.out.println("请输入商品的名字");
        String  name = sc.next();
        //输入单价
        System.out.println("请输入商品的单价");
        double price  = sc.nextDouble();
        //创建FruitItem变量
        FruitItem item = new FruitItem();
        //item.属性赋值
        item.ID = number ;
        item.name =name ;
        item.price =price  ;
        array.add(item) ;

    }
2.7 商品删除功能
 /*
     *定义方法,实现删除功能
     *返回值:无
     * 参数:集合
     * 删除依靠的是商品编号
     * 遍历集合,获取集合中每个FruitItem的变量
     * 调用属性ID,和用户输入的编号相比,相同就删除
     */       

  public static void deleteFruit(ArrayList<FruitItem> array) {
       System.out.println("选择的是删除功能");
       System.out.println("请输入商品的编号");
       Scanner sc = new Scanner (System.in);

       int ID =sc.nextInt();
       //遍历集合
       for(int i =0; i<array.size();i++) {
              //通过集合get方法,获取FruitItem变量  
              FruitItem item = array.get(i);
              //变量,调用属性ID,和用户输入的编号进行比较
              if(item.ID==ID) {
                  //用集合的方法remove实现
                  array.remove(i);
                  System.out.println("删除成功 ");
                  return;
              }
        } 
       System.out.println("您输入的编号不存在");
  }    
2.8 商品修改功能
 /*
   *定义方法,实现修改功能
   *返回值:无
   * 参数:集合
   * 
   * 提示用户选择的是修改功能
   * 提示用户输入需要修改的商品编号
   * 遍历集合,获取集合中的每一个FruitItem变量,
   * 调用ID属性,与用户输入的编号相比较
   * 如果相同:
   *       修改FruitItem的属性值
   * 
   */  
  public static void updateFruit(ArrayList<FruitItem> array) {
       System.out.println("选择的是修改功能");
       System.out.println("请输入商品的编号");
       Scanner sc = new Scanner (System.in);

       int ID =sc.nextInt();
       //遍历集合
       for(int i =0; i<array.size();i++) {
              //通过集合get方法,获取FruitItem变量  
              FruitItem item = array.get(i);
              //变量,调用属性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.nextInt();

                return;
              }
       } 
       System.out.println("您输入的编号不存在");
 }    
2.9 完整代码
/*
 * 自定义类,描述商品信息
 * 商品属性:
 *        编号,int
 *        品名,String
 *        价格,double
 *        数量,int
 *        总价,double
 *
 * 商品类型最终是要存储到ArrayList中应用的
 */
public class FruitItem {

    int ID;

    String name ;

    double price;

    int number ;

    double money ;


}

import java.util.ArrayList;
import java.util.Scanner;

/*
 * 超市管理系统
 * 1. 商品数据的初始化
 * 2.用户菜单选择
 * 3.根据选择执行不同功能
 *   3.1 Create  添加商品
 *   3.2 Update  修改商品
 *   3.3 Read  查看商品
 *   3.4 Delete 删除商品
 *     
 *   以上功能必须定义方法实现
 *   主方法main  调用
 *
 * 
 */
public class Shopping {
     private static final int ID = 0;
    public static void main(String[] args) {

        //创建ArrayList集合,存储商品类型,存储数据类型FruitItem类型
        ArrayList<FruitItem> array = new ArrayList<FruitItem>();
        //调用初始化方法,传递集合
        init(array);
        //System.out.println(array); 输出结果为索引地址为正确

        while (true) {
            //调用菜单方法
            mainMenu();
            //调用选择序号方法
            int choose = chooseFunction();
            switch (choose) {
            case 1:
                //调用1货物清单
                showFruitList(array);
                break;
            case 2:
                //调用2添加货物
                addFruit(array);
                break;  
            case 3:
                //调用3删除货物
                deleteFruit(array);
                break;  
            case 4:
                //调用4修改货物
                updateFruit(array);
                break;
            case 5:
                return ;        

            default:
                System.out.println("您输入的功能不存在");
                break;
            }

        }

     }
    /*
     *定义方法,实现接受用户的键盘输入 
     * 返回编号
     */
         public static int chooseFunction() {
             Scanner sc = new Scanner (System.in);
             return sc.nextInt();
         }
     /*
     * 定义方法,实现主菜单
     * 返回值:无
     * 参数:无
     */
         public static void mainMenu() {
            System.out.println("==============欢迎光临ItCast超市=================");
            System.out.println("1:货物清单 2:添加货物 3: 删除货物  4: 修改货物  5: 退出");
            System.out.println("请输入您需要的功能序号:");
        }
         /*
          * 定义方法,实现商品数据的初始化
          * 先将部分数据存储于集合之中
          * 返回值:无
          * 参数:集合
          * 方法名:init
          */
         private static void init(ArrayList<FruitItem> array) {
           //创建多个FruitItem类型,并且属性赋值
            FruitItem f1 = new FruitItem();
            f1.ID = 9527;
            f1.name = "少林寺酥饼核桃";
            f1.price = 12.7;

            FruitItem f2 = new FruitItem();
            f2.ID = 9008;
            f2.name = "尚康杂粮牡丹饼";
            f2.price =5.6;

            FruitItem f3 = new FruitItem();
            f3.ID = 9870;
            f3.name = "新疆原产哈密瓜";
            f3.price =599.6;
            //把创建的3个FruitItem类型变量,存储到集合中
            array.add(f1);
            array.add(f2);
            array.add(f3);

        }   

      /*
       *定义方法,实现货物清单功能
       *返回值:无
       * 参数:集合
       * 遍历集合,获取集合中的每一个FruitItem变量,调用属性
       */  
       public static void showFruitList(ArrayList<FruitItem> array) {
           System.out.println();
           System.out.println("============商品库存清单============");
           System.out.println("商品编号             商品名称              商品单价");
           //遍历集合
           for(int i =0; i<array.size();i++) {
              //通过集合get方法,获取FruitItem变量  
              FruitItem item = array.get(i);
              //变量item调用类中属性
              System.out.println(item.ID +"  "+item.name+"    "+item.price);

           }

        }  

   /*
    * 定义方法,实现货物添加功能
    * 返回值:无
    * 参数:集合
    * 提示用户选择的是添加功能
    * 提示用户添加的内容是什么
    * 创建FruitItem变量,变量调用的属性
    * 将输入的每个商品的属性进行赋值
    */    
    public static void addFruit (ArrayList<FruitItem> array) {
        System.out.println("选择的是添加商品功能");
        //创建Scanner变量
        Scanner sc = new Scanner (System.in) ;
        //输入编号
        System.out.println("请输入商品的编号");
        int number = sc.nextInt();
        //输入名字
        System.out.println("请输入商品的名字");
        String  name = sc.next();
        //输入单价
        System.out.println("请输入商品的单价");
        double price  = sc.nextDouble();
        //创建FruitItem变量
        FruitItem item = new FruitItem();
        //item.属性赋值
        item.ID = number ;
        item.name =name ;
        item.price =price  ;
        array.add(item) ;

    }
    /*
     *定义方法,实现删除功能
     *返回值:无
     * 参数:集合
     * 删除依靠的是商品编号
     * 遍历集合,获取集合中每个FruitItem的变量
     * 调用属性ID,和用户输入的编号相比,相同就删除
     */       

  public static void deleteFruit(ArrayList<FruitItem> array) {
       System.out.println("选择的是删除功能");
       System.out.println("请输入商品的编号");
       Scanner sc = new Scanner (System.in);

       int ID =sc.nextInt();
       //遍历集合
       for(int i =0; i<array.size();i++) {
              //通过集合get方法,获取FruitItem变量  
              FruitItem item = array.get(i);
              //变量,调用属性ID,和用户输入的编号进行比较
              if(item.ID==ID) {
                  //用集合的方法remove实现
                  array.remove(i);
                  System.out.println("删除成功 ");
                  return;
              }
        } 
       System.out.println("您输入的编号不存在");
  }    
  /*
   *定义方法,实现修改功能
   *返回值:无
   * 参数:集合
   * 
   * 提示用户选择的是修改功能
   * 提示用户输入需要修改的商品编号
   * 遍历集合,获取集合中的每一个FruitItem变量,
   * 调用ID属性,与用户输入的编号相比较
   * 如果相同:
   *       修改FruitItem的属性值
   * 
   */  
  public static void updateFruit(ArrayList<FruitItem> array) {
       System.out.println("选择的是修改功能");
       System.out.println("请输入商品的编号");
       Scanner sc = new Scanner (System.in);

       int ID =sc.nextInt();
       //遍历集合
       for(int i =0; i<array.size();i++) {
              //通过集合get方法,获取FruitItem变量  
              FruitItem item = array.get(i);
              //变量,调用属性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.nextInt();

                return;
              }
       } 
       System.out.println("您输入的编号不存在");
 }     

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值