Java集合
集合
概述
集合与数组类似,也是一种引用类型,也可以存放很多个数据。但是数组的长度不可改变,而集合的长度是可变的,所以使用更加方便。
集合有很多种,现阶段我们学习最为简单的java.util.ArrayList集合。
构造方法
创建一个ArrayList,最常用的就是默认无参数的构造方法:
l public ArrayList()
创建集合的时候要注意尖括号中要指定泛型,也就是里面存放的都是统一的什么数据类型。注意,泛型只能是引用类型,不能是基本类型。
public class Demo01ArrayList { public static void main(String[] args) { // 创建一个集合,存放的全都是String字符串类型的数据 ArrayList<String> list1 = new ArrayList<>(); // 泛型只能写引用类型,不能写基本类型,下面是错误写法! // ArrayList<int> list2 = new ArrayList<>(); } }
常用方法
集合主要是用来存储数据的,所以常用的方法有:
l public boolean add(E element):向集合中放入一个数据对象,参数是被放入的对象,返回值一定为true。
l public E get(int index):从集合中取出一个对象,参数是对象的索引值(从0开始),返回值是获取的对象。
l 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()); } } }
posted on 2019-07-20 11:18 imyourterminal 阅读(133) 评论(0) 编辑 收藏 举报