zoukankan      html  css  js  c++  java
  • Java学习笔记day06_自定义类_ArrayList

    1.自定义类class

      使用类的形式, 对现实中的事物进行描述. 类是引用数据类型.

        事物: 方法,变量.

          方法:事物具备的功能.
          变量:事物的属性.

      格式:

    public class 类名{
        //属性定义(变量):
            修饰符 数据类型 变量名 = 值;
                
        //功能定义(方法):
            修饰符 返回值类型 方法名(参数列表){
                        
        }
    }

    2.使用自定义类

      创建引用类型变量的格式:
        数据类型 变量名 = new 数据类型();

      实现引用类型的步骤:
        1.导入包. 类在同一个文件夹,不需要导入包.
        2.创建引用类型的变量
        3.变量.类型中的功能

    3.ArrayList集合

      ArrayList集合只存储引用类型, 不存储基本类型.(相当于存储引用类型的"数组", 可存多个引用类型).

      导包 java.util.ArrayList;

      ArrayList集合起始索引为0.

      格式:

    ArrayList<集合存储的数据类型> 变量名 = new ArrayList<集合存储的数据类型>();
    如:
    ArrayList<String> array = new ArrayList<String>();

    4.ArrayList中的方法

      add() 向集合中添加元素. 注意添加的参数类型.

      get(index) 取出集合中的索引为index的元素.

      size() 返回集合的长度.

      

      add(index, 元素) 将元素添加到索引位置, 该位置及之后元素后移.

      set(index, 元素) 将索引元素进行修改.

      remove(index) 删除索引位置元素, 之后的元素前移.

      clear() 清空集合.

    5.自定义类及ArrayList的运用_库存管理案例

    /*
            Goods.java
        定义描述商品的类
        商品 4个属性
            商品名字    大小    价格    库存
             String       double  double    int
             
        这个类型的变量,存储到集合中
    */
    
    public class Goods{
        //定义商品名字
        String brand;
        //大小
        double size;
        //价格
        double price;
        //库存属性
        int stock;
    }
    /*
        Shopp.java
        实现库存管理案例:
            1.存储商品信息(方法)
                存储商品类型变量
                将商品类型的变量,存储到集合中
                
            2.查看库存的清单
                将集合进行遍历,获取出集合中存储的Goods类型变量
                输出每一个Goods类型的属性
                计算求和:总库存,总金额
                
            3.修改商品的库存
                集合遍历,获取出集合中存储的Goods类型变量
                变量调用Goods类的属性stock值进行修改(键盘输入)
    */
    import java.util.*;
    public class Shopp{
        public static void main(String[] args){
            //创建集合,存储Goods类型
            ArrayList<Goods> j = new ArrayList<Goods>();
            //调用添加商品信息的方法
            addGoods(array);
            
            //进入死循环
            while(true){
                //调用选择功能的方法,获取到用户输入的序号
                int i = chooseFunction();
                switch(i){
                    case 1:
                        //查看库存清单,遍历集合
                        printStore(array);
                        break;
                    case 2:
                        update(array);
                        break;
                    case 3:
                        return ;
                    default:
                        System.out.println("输入有误");
                        break;
                }
            }
            
        }
        
        
        
        /*
            定义方法,实现选择菜单,用户根据功能选择菜单
        */
        public static int chooseFunction(){
            System.out.println("-----------库存管理----------");
            System.out.println("1.查看库存清单");
            System.out.println("2.修改商品库存量");
            System.out.println("3.退出");
            System.out.println("请输入要执行的操作序号");
            Scanner sc = new Scanner(System.in);
            int number = sc.nextInt();
            return number;
        }
        
        
        
        /*
            定义方法,修改库存
            键盘输入,将Goods中的属性值,修改
        */
        public static void update(ArrayList<Goods> array){
            Scanner sc = new Scanner(System.in);
            //遍历集合,获取集合中的每个元素
            for(int i=0; i<array.size(); i++)
            {
                Goods g = array.get(i);
                System.out.println("请输入"+g.brand+"的库存数:");
                g.stock = sc.nextInt();
            }
        }
        
        
        
        
        
        /*
            定义方法,查看库存清单,遍历集合
        */
        public static void printStore(ArrayList<Goods> array){
            //输出表头
            System.out.println("--------商场库存清单---------");
            System.out.println("品牌型号    尺寸    价格    库存数");
            //定义变量,保存总库存,总金额
            int totalStock = 0;
            double totalMoney = 0.0;        
            //遍历集合
            for(int i=0; i<array.size(); i++)
            {
                Goods g = array.get(i);
                System.out.println(g.brand+"    "+g.size+"    "+g.price+"    "+g.stock);
                totalStock += g.stock;
                totalMoney = totalMoney + g.stock*g.price;
            }
            
            System.out.println("总库存数:"+totalStock);
            System.out.println("商品库存总金额:"+totalMoney);
        }
        
        
        
        /*
            定义方法,将商品信息存储到集合中
            集合是所有方法的共享数据,参数传递
        */
        public static void addGoods(ArrayList<Goods> array){
            //创建商品类型变量
            Goods g1 = new Goods();
            Goods g2 = new Goods();
            
            g1.brand = "MacBookAir";
            g1.size = 13.3;
            g1.price = 9998.9;
            g1.stock = 7;
            
            g2.brand = "ThinkPad";
            g2.size = 15.6;
            g2.price = 6998.9;
            g2.stock = 4;
            
            //Goods类型的变量,存储到集合中
            array.add(g1);
            array.add(g2);
        }
    }
  • 相关阅读:
    揭开HTTPS神秘面纱
    HTTP常见状态码
    js常用小代码
    通俗讲解OSI七层模型
    WSCDL所在的协议栈位置
    Models and Verification of BPEL
    mysql root密码修改
    c++ Socket 学习笔记一
    mysql备份
    圣杯布局
  • 原文地址:https://www.cnblogs.com/nemowang1996/p/8409443.html
Copyright © 2011-2022 走看看