zoukankan      html  css  js  c++  java
  • java-4

    1.类

    类是由属性和方法组成的,属性中定义类的具体信息(变量),方法是一些操作的行为,对象则是类的实例化。

    复制代码
    class ElectricBowl 
    {
        String brand;
        double volume;
        String color;
    }
    //新建一个类
    复制代码
    复制代码
    class  Test
    {
        public static void main(String[] args) 
        {
            ElectricBowl gree = new ElectricBowl(); 
            //同包内直接引用类,新建对象,实例化类
            gree.brand = "格力";//定义对象属性
            gree.volume = 2;
            gree.color = "黑色";
            System.out.println(gree.brand+gree.volume+gree.color);
        }
    }
        
    复制代码
    复制代码
    class  Car
    {
        String brand;
        double displacement;
        String type;
        public String test(){ //新建一个方法
            return brand+displacement+type;
        }
    }
    复制代码
    复制代码
    class  Test
    {
        public static void main(String[] args) 
        {
            Car tesla = new Car();
            tesla.brand = "特斯拉";
            tesla.displacement = 0;
            tesla.type = "电动车";
            String sum = tesla.test(); //利用对象调用方法
            System.out.println(sum);
        }
    }
    复制代码

    2.ArrayList 集合

    ArrayList是一个可变长度的数组,数组长度随着元素的增加而增加,集合内可放入数据以及对象。

    复制代码
    import java.util.ArrayList; //导包
    class  Test
    {
        public static void main(String[] args) 
        {
            ArrayList<String> car = new ArrayList<String>();
                    //泛型,<>内填写引用数据类型,只有此类元素可以放入集合内
                    //Integer,Byte,Short,Long,Float,Double,Character,Boolean
            car.add("大众"); //向集合内添加元素,注意,是添加至集合末尾
            car.add("福特");
            car.add("丰田");
            car.add("吉利");
            car.add("比亚迪");
            for(int i=0;i<car.size();i++){ //size()方法返回集合长度
                System.out.println(car.get(i));//get()方法返回指定下标元素
        }
    }
    复制代码

    集合内放入对象:

    复制代码
    class  Students
    {
        String name;
        int age;
        char sex;
    }
    复制代码
    复制代码
    import java.util.ArrayList; 
    class  Test
    {
        public static void main(String[] args) 
        {
            Students wizard = new Students();
            wizard.name = "Harry";
            wizard.age = 17;
            wizard.sex = '男';
            Students assassin = new Students();
            assassin.name = "Ezio";
            assassin.age = 20;
            assassin.sex = '男';
            Students mechanic = new Students();
            mechanic.name = "Windy";
            mechanic.age = 15;
            mechanic.sex = '女';
            ArrayList<Students> students = new ArrayList<Students>();
            students.add(wizard);
            students.add(assassin);
            students.add(mechanic);
            for(int i=0;i<students.size();i++){
                System.out.print(students.get(i).name+'	'+students.get(i).age+'	'+students.get(i).sex);//注意,此处如果输出get(i),则返回对象的内存地址
                System.out.println("");
            }
    }
    复制代码

    常用方法:

    add(数据); 添加元素。

    add(下标,数据); 在指定下标位置添加元素,前提是该下标存在,否则数组下标越界错误。

    set(下标,数据) 修改指定下标位置的元素。

    remove(下标); 删除指定下标位置元素。

    clear(); 清空数组中所有元素。

    注意!当把主方法内的集合作为参数传入其他方法时,如果集合添加了泛型,请务必如在定义方法形参时加上泛型,否则编译报错:

    原因在于在主方法内,用一个参数引用了集合,如果在主方法内用参数名.get().属性 完全没有问题,但是如果当做参数传入其他方法,

    形参只写ArrayList 形参名 ,则形参指向不明,在Eclipse内会黄线警告,提示集合未实例化,而传入的集合指向不明,所以无法读取其内部元素的属性。

    正确书写方式:

    复制代码
    import java.util.Scanner;
    import java.util.ArrayList;
    public class  kucun{
         public kucun(String cname,double csize,double cprice,int cinventory){
            pname = cname;
            size = csize;
            price = cprice;
            inventory = cinventory;
        } //有参构造方法,实例化对象时默认调用该方法,不定义则默认使用无参构造方法
         public static void CheckInventory(ArrayList<kucun> product){  //有泛型一定要把泛型写上!!
                int tinventory = 0;
                double tprice = 0;
                System.out.println("------------------"+"商城库存清单"+"------------------");
                System.out.println("");
                System.out.println("商品编号"+'	'+"品牌型号"+'	'+'	'+"尺寸"+'	'+"价格"+'	'+"库存数");
                for(int j=0;j<product.size();j++){
                    System.out.println((j+1)+"  "+'	'+product.get(j).pname+'	'+product.get(j).size+'	'+product.get(j).price+'	'+product.get(j).inventory);
                }
                System.out.println("-----------------------------------------------");
                for(int i=0;i<product.size();i++){
                    tinventory+=product.get(i).inventory;
                    tprice+=product.get(i).price;
                }
                System.out.println("总库存数:"+tinventory);
                System.out.println("库存商品总额:"+tprice);
        }
        public static void main(String[] args){    
            kucun mba = new kucun("MacBOOKAir",13.3,6988.88,5);
            kucun tp = new kucun("ThinkpadT450",14.0,5999.99,10);
            kucun asus = new kucun("ASUS-FL5800",15.6,4999.5,18);
            ArrayList<kucun> product = new ArrayList<kucun>();
            product.add(mba);
            product.add(tp);
            product.add(asus);
            CheckInventory(product);
        }
    }
    复制代码
  • 相关阅读:
    Python之爬虫(十四) Scrapy框架的架构和原理
    Python之爬虫从入门到放弃(十三) Scrapy框架整体的了解
    Python之 爬虫(十二)关于深度优先和广度优先
    kali linux
    html5笔记
    python 3.4.3 安装pygame
    跳格子
    简单字符串查找
    KMP算法查找字符串
    ios系统保存校园网密码
  • 原文地址:https://www.cnblogs.com/wangnatian/p/8681876.html
Copyright © 2011-2022 走看看