zoukankan      html  css  js  c++  java
  • ArrayList方法综合练习

    package com.zs.windows;
    
    import java.util.ArrayList;
    import java.util.Scanner;
    
    import com.zs.entity.Goods;//导入Goods类,下面会说明怎么创建Goods类
    
    public class Shop {
        
        private static Scanner s;
    
        public static void main(String[] args) {
            s = new Scanner(System.in);
            ArrayList<Goods> arr=new ArrayList<Goods>();
            chuShiData(arr);
            while (true) {
                    Windows();//功能菜单窗口
                    System.out.print("请选择功能:");
                    int num=s.nextInt();
                    switch (num) {
                    case 1:
                        printarr(arr);//调用遍历集合方法
                        break;
                    case 2:
                        addshop(arr);//调用添加元素方法
                        break;
                    case 3:
                        upkeepShop(arr);//调用修改元素方法
                        break;
                    case 4:
                        deleteShop(arr);//调用删除方法
                        break;
                    case 0:
                        return;
                    default:System.out.println("请输入正确的选择!!!");
                        break;
                    }
            }
        }
        //创建删除商品方法
        private static void deleteShop(ArrayList<Goods> arr) {
            // 先创建功能菜单
            System.out.println("**********删除***********");
            System.out.println("1. 删除指定商品");
            System.out.println("2. 删除全部商品");
            System.out.println("************************");
            System.out.print("请选择:");
            int num=s.nextInt();
            switch (num) {
            case 1:
                printarr(arr);
                System.out.println("请输入要删除的商品序号:");
                arr.remove(s.nextInt());//清除制定下标元素
                break;
            case 2:arr.clear();//清除集合所有元素
            default:System.out.println("请输入正确的格式:");
                break;
            }
        }
        //创建修改商品方法
        private static void upkeepShop(ArrayList<Goods> arr) {
            // 创建修改功能界面
            
            System.out.println("请输入要修改的商品序号:");
            int num=s.nextInt();
            Goods g=arr.get(num);
            while(true){
                System.out.println("********修改商品*********");
                System.out.println("1.修改品牌名");
                System.out.println("2.修改价格");
                System.out.println("3.修改尺寸");
                System.out.println("4.修改库存");
                System.out.println("0.退出");
                System.out.println("**********************");
                System.out.print("请选择:");
                int check=s.nextInt();
    //根据选择对象的属性来对象修改值
                switch (check) {
                case 1:
                    System.out.println("请输入品牌名:");
                    g.brand=s.next();
                    break;
                case 2:
                    System.out.println("请输入修改后价格:");
                    g.price=s.nextDouble();
                    break;
                case 3:
                    System.out.println("请输入修改后尺寸:");
                    g.size=s.nextDouble();
                    break;
                case 4:
                    System.out.println("请输入新的库存:");
                    g.count=s.nextInt();
                    break;
                case 0:return;
                default:System.out.println("请输入正确的格式");
                    break;
                }    
                arr.set(num, g);//将指定下标元素修改为新的元素
                printarr(arr);//遍历输出集合
            }        
        }
    
        //创建添加商品方法
        private static void addshop(ArrayList<Goods> arr) {
            // 创建Goods对象
            Goods g=new Goods();
            System.out.println("请输入商品名:");
            g.brand=s.next();
            System.out.println("请输入商品价钱:");
            g.price=s.nextDouble();
            System.out.println("请输入商品尺寸:");
            g.price=s.nextDouble();
            System.out.println("请输入库存:");
            g.count=s.nextInt();
            arr.add(g);
            printarr(arr);
        }
        //创建桌面菜单
        private static void Windows() {
            // TODO 自动生成的方法存根
            System.out.println("****************商品管理***************");
            System.out.println("	1.查看所有商品");
            System.out.println("	2.添加商品");
            System.out.println("	3.修改商品");
            System.out.println("	4.删除商品");
            System.out.println("	0.退出");
            System.out.println("*************************************");
        }
        //创建遍历查看所有商品方法
        private static void printarr(ArrayList<Goods> arr) {
            // TODO 自动生成的方法存根
            System.out.println("***************商品*****************");
            System.out.println("商品序号	品牌	价钱	尺寸	库存");
            for (int i = 0; i < arr.size(); i++) {
                Goods g=arr.get(i);
                System.out.println(i+".      "+g.brand+"	"+g.price+"	"+g.size+"	"+g.count);    
            }
            System.out.println("
    ");
        }
    
        private static void chuShiData(ArrayList<Goods> arr) {
            // 设置集合初始化数据;
            Goods s1=new Goods();
            s1.brand="小米";
            s1.price=1999.99;
            s1.size=15.5;
            s1.count=10;
            arr.add(s1);
            Goods s2=new Goods();
            s2.brand="华为";
            s2.price=1888.4;
            s2.size=4.2;
            s2.count=40;
            arr.add(s2);
            Goods s3=new Goods();
            s3.brand="金立";
            s3.price=10.88;
            s3.size=5.5;
            s3.count=100;
            arr.add(s3);
        }
    
    }

    在执行上面类之前,要先建一个Goods类,

    package com.zs.entity;
    
    public class Goods {
        public String brand;
        public double price;
        public double size;
        public int count;
    }
  • 相关阅读:
    107. Binary Tree Level Order Traversal II
    103. Binary Tree Zigzag Level Order Traversal
    102. Binary Tree Level Order Traversal
    690. Employee Importance
    1723. Find Minimum Time to Finish All Jobs
    LeetCode 329 矩阵中最长增长路径
    7.2 物理内存管理
    LeetCode 面试题 特定深度节点链表
    LeetCode 100 相同的树
    npm安装包命令详解,dependencies与devDependencies实际区别
  • 原文地址:https://www.cnblogs.com/Zs-book1/p/10519366.html
Copyright © 2011-2022 走看看