市住房和城乡建设局网站大连,wordpress免费注册,做网站要会没软件,wordpress后台制作容器类#xff1a;用来解决数组具有固定尺寸而使得灵活性受限的问题。基本的容器类#xff08;集合类#xff09;有#xff1a;List、Set、Queue、Map。 Java容器类类库的用途是用来“保存对象”#xff0c;这分为两个不同的大类#xff1a; 1.Collection#xff08;集合…容器类用来解决数组具有固定尺寸而使得灵活性受限的问题。基本的容器类集合类有List、Set、Queue、Map。 Java容器类类库的用途是用来“保存对象”这分为两个不同的大类 1.Collection集合的根接口2.Map每个槽内保存了两个对象即键/值对。 它们的区别在于容器中每个“槽”可以保存的元素个数。Collection的每个槽只能保存一个元素。此类容器包括1List:以特定的顺序保存一组元素2Set元素不能重复3Queue只允许在容器的一“端”插入对象并从另一“端”移除对象 最早在学习泛型类的时候接触过的容器类有ArrayList。使用add()和get(index)来添加和访问对象set(index,element)修改对象size()返回当前容器中添加了多少个元素相当于长度。注ArrayList是一个实现了Collection接口的类。 复习一下关于ArrayList的两种定义方法 方法一ArrayList list new ArrayList() 这样存进去的对象默认都是Object类型的但在当使用get取出时必须进行类型转换否则是Object的引用。 方法二ArrayListT list new ArrayListT()在最开始就预定义了类型这样get时就不需要进行显示类型转换。当指定了类型T时并不仅限于只能该确切的T类对象放置到容器中可以向上转型。即可以存放T的子类对象到容器中。 下面是一个ArrayList操作的小例子 1 import java.util.ArrayList;2 public class A {3 public static void main(String[] args) {4 ArrayListBasic list new ArrayListBasic();5 list.add(new Z1());6 list.add(new Z2());7 list.add(new Z3());8 for(Basic b:list){9 System.out.println(b);
10 }
11 }
12 }
13 class Basic{}
14 class Z1 extends Basic{};
15 class Z2 extends Basic{};
16 class Z3 extends Basic{}; 前面介绍过Collection容器类是用来保存对象的集合那么如何往Collection中添加对象呢方法是很多的下面介绍了4种常见方法 1.add()2.Arrays.asList(数组/元素列表) 接受一个数组或者是用逗号分割的元素列表将其转换成一个List对象。3.使用静态类Collections中的addAll(collection,数组/元素列表)方法4.直接用Arrays.asList()输出将其当作是List。但其实底层还是数组因此不能调整尺寸。可以用set()来修改元素但不能用add()添加否则会报异常。 Collection添加元素的Demo 1 import java.util.ArrayList;2 import java.util.Arrays;3 import java.util.Collection;4 import java.util.Collections;5 import java.util.List;6 7 public class A {8 public static void main(String[] args) {9 // 元素列表
10 CollectionInteger c new ArrayListInteger(Arrays.asList(1, 2, 3, 4, 5));
11
12 // 接受一个数组转换成List
13 Integer[] moreInts { 6, 7, 8, 9, 10 };
14 c.addAll(Arrays.asList(moreInts));
15
16 // 使用静态类Collections中的方法
17 Collections.addAll(c, 11, 12, 13, 14, 15);
18
19 // addAll方法也可以接受数组
20 Collections.addAll(c, moreInts);
21
22
23 //foreach方式打印
24 for(Integer i: c){ System.out.print(i ); }
25
26
27 // 直接用Arrays.asList()输出
28 ListInteger list Arrays.asList(moreInts);
29 list.set(0, 1);
30 /*
31 * list.add(100);
32 * 这条编译不通过原因是底层仍旧是一个数组不能更改尺寸
33 */
34
35 //容器类默认打印方式
36 System.out.println(list);
37
38 }
39 } 容器的默认打印行为默认调用toString()打印的结果用中括号括起来。如上面例子最后一条 [1, 7, 8, 9, 10]转载于:https://www.cnblogs.com/devilfree/archive/2012/09/16/2687886.html