zoukankan      html  css  js  c++  java
  • Java集合

    集合

    概述

    集合与数组类似,也是一种引用类型,也可以存放很多个数据。但是数组的长度不可改变,而集合的长度是可变的,所以使用更加方便。

    集合有很多种,现阶段我们学习最为简单的java.util.ArrayList集合。

    构造方法

    创建一个ArrayList,最常用的就是默认无参数的构造方法:

    public ArrayList()

    创建集合的时候要注意尖括号中要指定泛型,也就是里面存放的都是统一的什么数据类型。注意,泛型只能是引用类型,不能是基本类型。

    public class Demo01ArrayList {
        
        public static void main(String[] args) {
            // 创建一个集合,存放的全都是String字符串类型的数据
            ArrayList<String> list1 = new ArrayList<>();
            
            // 泛型只能写引用类型,不能写基本类型,下面是错误写法!
    //        ArrayList<int> list2 = new ArrayList<>();
        }
    
    }

     

    常用方法

    集合主要是用来存储数据的,所以常用的方法有:

    public boolean add(E element):向集合中放入一个数据对象,参数是被放入的对象,返回值一定为true。

    public E get(int index):从集合中取出一个对象,参数是对象的索引值(从0开始),返回值是获取的对象。

    public int size():获取集合的长度,返回值是集合的长度int数字,是可以变化的。

    public class Demo02ArrayListMethod {
        
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<>();
            System.out.println(list); // []
            
            // 向集合当中添加元素:add
            list.add("鹿晗");
            list.add("吴亦凡");
            list.add("张艺兴");
            System.out.println(list); // [鹿晗, 吴亦凡, 张艺兴]
            
            boolean success = list.add("关晓彤");
            System.out.println("添加元素是否成功:" + success); // true
            System.out.println(list); // [鹿晗, 吴亦凡, 张艺兴, 关晓彤]
            System.out.println("====================");
            
            String name = list.get(1); // 获取第1号元素
            System.out.println(name); // 吴亦凡
            System.out.println(list); // [鹿晗, 吴亦凡, 张艺兴, 关晓彤]
            System.out.println("====================");
            
            System.out.println("集合的长度:" + list.size()); // 4
            list.add("赵丽颖");
            list.add("迪丽热巴");
            list.add("古力娜扎");
            list.add("玛尔扎哈"); 
            System.out.println("集合的长度:" + list.size()); // 8
        }
    
    }

     

     

    存储基本类型

    集合的泛型必须是引用类型,不能是基本类型。如果一定要存储基本类型,需要使用对应的包装类(都位于java.lang包下)。基本类型与包装类的对应关系如下:

    l     byte       Byte

    l     short      Short

    l     int          Integer

    l     long       Long

    l     float       Float

    l     long       Long

    l     char       Character

    l     boolean  Boolean

    public class Demo04ArrayListWrapper {
        
        public static void main(String[] args) {
            ArrayList<Integer> list = new ArrayList<>();
            
            list.add(100);
            list.add(200);
            list.add(300);
            
            int result = list.get(1);
            System.out.println(result); // 200
        }
    
    }

     

    存储自定义类型

    集合可以存储任何引用类型,包括自定义的Person、Student等各种类。

    public class Demo05ArrayListCustom {
        
        public static void main(String[] args) {
            // 首先创建几个Person对象
            Person one = new Person("迪丽热巴", 18);
            Person two = new Person("古力娜扎", 19);
            Person three = new Person("玛尔扎哈", 200);
            
            // 准备一个集合,用来存放多个Person对象
            ArrayList<Person> list = new ArrayList<>();
            
            // 将对象添加到集合当中
            list.add(one);
            list.add(two);
            list.add(three);
            
            // 遍历集合
            for (int i = 0; i < list.size(); i++) {
                Person per = list.get(i);
                System.out.println("姓名:" + per.getName() + ",年龄:" + per.getAge());
            }
        }
    
    }

     

  • 相关阅读:
    tarjan algorithm
    最小生成树
    Manacher's Algorithm (马拉车算法)
    KMP
    Trie(字典树)
    Hash
    GDB调试
    图论
    扫描线
    STL
  • 原文地址:https://www.cnblogs.com/dmndxld/p/11217085.html
Copyright © 2011-2022 走看看