行业知识
集合Collection-List
2026-11-01 00:14:57
来源:互联网转载
collection单列集合,���个元素只包含一个值,Map代表双列集合,每个元素包含两个值(键值对)
Collection:
代表单列集合,每个元素(数据)只包含一个值;
package d1_collection;import java.util.ArrayList;import java.util.Arrays;import java.util.HashSet;public class CollectionTest1 { public static void main(String[] args) { // 简单确认collection集合的特点 ArrayList list = new ArrayList(); //有序 可重复 有索引 list.add("java1"); list.add("java2"); list.add("java3"); list.add("java3"); System.out.println(list);//[java1, java2, java3, java3] System.out.println(list.get(1));//java2 HashSet set = new HashSet(); // 无序,不重复 无索引(不能get得到元素) set.add("java1"); set.add("java2"); set.add("java3"); set.add("java3"); System.out.println(set);// [java3, java2, java1] }} Collection的常用方法:
package d1_collection;import java.util.ArrayList;import java.util.Arrays;import java.util.Collection;public class CollectionTestAPI { public static void main(String[] args) { Collection c = new ArrayList(); // 1、public boolean add(E e):添加成功返回true c.add("java1"); c.add("java1"); c.add("java2"); c.add("java2"); c.add("java3"); System.out.println(c);//[java1, java1, java2, java2, java3] // 2、public void clear():清空集合的元素// c.clear();// System.out.println(c);//true // 3、 public boolean isEmpty(): 判断集合时候为空 System.out.println(c.isEmpty()); //false // 4、public int size() 获取集合的大小 System.out.println(c.size());//5 //5 、public boolean contains(Object obj):判断集合中是否包含某个元素 System.out.println(c.contains("java1"));//true System.out.println(c.contains("Java1"));//false // 6、 public boolean remove(E e):删除某个元素:如果有多个重复元素默认删除前边第一个 System.out.println(c.remove("java1")); //true System.out.println(c);//[java1, java2, java2, java3] // 7、 public Object[] toArray() 把集合转换成数组 Object[] arr = c.toArray(); System.out.println(Arrays.toString(arr)); //[java1, java2, java2, java3] String[] arr2 = c.toArray(new String[c.size()]); System.out.println(Arrays.toString(arr2)); //[java1, java2, java2, java3] System.out.println("==============================="); //把一个集合的全部数据倒入到领一个集合中去 Collection c1 = new ArrayList(); c1.add("java1"); c1.add("java2"); Collection c2 = new ArrayList(); c2.add("java3"); c2.add("java4"); c1.addAll(c2); System.out.println(c1); // [java1, java2, java3, java4] System.out.println(c2); // [java3, java4] }} Collection的遍历方式
迭代器
用来遍历集合的专用方式 (数组没有迭代器),在java中迭代器的代表是Iterator。
Collection集合获取迭代器的方法:
Iterator iterator() // 返回集合中的迭代器对象,该迭代器对象默认指向当前集合的第一个元素
Iterator迭代器中的常用方法:
boolean hasNext() //询问当前位置是否有元素存在,存在返回true,不存在返回false;E next() //获取当前位置的元素,并同时将迭代器对象指向下一个元素处
package d2_collection_traverse;import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;public class CollectionDemo01 { public static void main(String[] args) { Collection c = new ArrayList(); c.add("赵敏"); c.add("小昭"); c.add("素素"); c.add("灭绝"); System.out.println(c);//[赵敏, 小昭, 素素, 灭绝] // 使用迭代器遍历集合 // 1、从集合对象中获取迭代器对象 Iterator it = c.iterator();// System.out.println(it.next()); //赵敏// System.out.println(it.next()); //小昭// System.out.println(it.next()); //素素// System.out.println(it.next()); //灭绝// System.out.println(it.next()); //出现异常 // 2、我们应该使用循环结合迭代器遍历集合 while(it.hasNext()){ String ele = it.next();//取数据 迭代器并移到下一个索引 System.out.println(ele); } //赵敏 //小昭 //素素 //灭绝 }} 增强for循环遍历:
package d2_collection_traverse;import java.util.ArrayList;import java.util.Collection;public class CollectionDemo02 { public static void main(String[] args) { Collection c = new ArrayList(); c.add("赵敏"); c.add("小昭"); c.add("素素"); c.add("灭绝"); System.out.println(c);//[赵敏, 小昭, 素素, 灭绝] // 使用增强for循环遍历集合或者数组 for(String ele : c){ System.out.println(ele); } String[] names = {"迪丽热巴","古力娜扎", "嘻哈"}; for (String name : names) { System.out.println(name); } }} Lambda表达式:
package d2_collection_traverse;import java.util.ArrayList;import java.util.Collection;import java.util.function.Consumer;public class CollectionDemo03 { public static void main(String[] args) { Collection c = new ArrayList(); c.add("赵敏"); c.add("小昭"); c.add("素素"); c.add("灭绝"); System.out.println(c);//[赵敏, 小昭, 素素, 灭绝] //default void forEach(Consumer