Java学习笔记27(集合框架一:ArrayList回顾、Co…

2018-06-18 03:53:51来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

集合:集合是java中提供的一种容器,可以用来存储多个数据

集合和数组的区别:

1.数组的长度是固定的,集合的长度是可变的

2.集合中存储的元素必须是引用类型数据

 

对ArrayList集合的回顾

示例:

package demo;

public class Person {
    private String name;
    private int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + "]";
    }

    public Person() {
    }

    public Person(String name, int age) {
        super();
        this.name = name;
        this.age = age;
    }

}
package demo;

import java.util.ArrayList;

public class ArrayListDemo {
    public static void main(String[] args) {
        // ArrayList复习
        // 存储基本数据
        ArrayList<Integer> array = new ArrayList<>();
        array.add(1);// 自动装箱
        array.add(2);
        array.add(3);
        array.add(4);
        array.add(5);
        for (int i = 0; i < array.size(); i++) {
            System.out.println(array.get(i));
        }

        // 存储自定义类Person对象
        ArrayList<Person> arrayPerson = new ArrayList<Person>();
        arrayPerson.add(new Person("a", 20));
        arrayPerson.add(new Person("b", 18));
        arrayPerson.add(new Person("c", 19));
        for (int i = 0; i < arrayPerson.size(); i++) {
            System.out.println(arrayPerson.get(i));
            //调用类重写的toString方法
        }
    }
}
/*输出:
2
3
4
5
Person [name=a, age=20]
Person [name=b, age=18]
Person [name=c, age=19]
*/

 

Collection接口是集合的根接口,研究它的方法应当通过它的实现类,

List继承了Collection,ArrayList实现了List接口,可以通过ArrayList研究Collection的部分方法:

 示例:

package demo;

import java.util.ArrayList;
import java.util.Collection;

public class CollectionDemo {
    public static void main(String[] args) {
        function1();
        function2();
        function3();
    }

    public static void function1() {
        // 利用多态的特性
        Collection<String> c1 = new ArrayList<String>();
        // 存入元素,有序集合
        c1.add("abc");
        c1.add("def");
        boolean b1 = c1.contains("abc");
        System.out.println(b1);// true,集合中是否包含这个元素
        c1.size();// 集合的大小,存入元素个数
        c1.clear();// 清空集合中的元素,集合本身存在
    }

    public static void function2() {
        // 得到一个存储对象的数组
        Collection<String> c1 = new ArrayList<String>();
        c1.add("abc");
        c1.add("def");
        c1.add("ghi");
        Object[] obj1 = c1.toArray();
        for (int i = 0; i < obj1.length; i++) {
            System.out.println(obj1[i]);
        }
    }

    public static void function3() {
        // 删除元素
        Collection<String> c1 = new ArrayList<String>();
        c1.add("abc");
        c1.add("def");
        c1.add("ghi");
        boolean b1 = c1.remove("abc");
        System.out.println(b1);// true
        // 是否删除成功,如果元素不存在,则删除失败
        System.out.println(c1);// [def, ghi]
        // 如果有重复元素的话,就删除第一个
    }
}

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java—将文件压缩为zip文件

下一篇:Spring @Value注入值失败,错误信息提示:Could not resolve pla