java集合框架
java.util.Collection
和
java.util.Map
是两个独立的接口
Collection集合及遍历
三种方法遍历集合Collection
- Iterator
- for
-
foreach
fo
r
e
a
c
h
foreach
f
o
r
e
a
c
h
本质还是用的迭代器遍历
package cn.itcast.day01.Collection;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
/**
*Boolean add()方法可以在集合中添加一个元素
*/
/**
* Boolean hasNext()方法可以判断下一个元素是否存在
* E next()方法可以得到下一个元素
*/
public class CollectionTest {
public static void main(String[] args) {
//<E> E可以是包装类、自定义类型、引用类型
Collection<String> col = new ArrayList<>();
col.add("xxx");
col.add("yyy");
col.add("zzz");
//迭代器遍历
Iterator it = col.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
System.out.println("====================");
//for循环遍历
for(Iterator it2=col.iterator(); it2.hasNext(); ){
System.out.println(it2.next());
}
System.out.println("====================");
//foreach循环遍历
for(Object it3:col){
System.out.println(it3);
}
}
}
Collection常用方法
public Boolean add()方法可以在集合中添加一个元素
public Boolean remove()方法可以移除一个元素
public Boolean isEmpty()方法可以判断集合是否为空
public int size() 返回集合元素个数
public Boolean contains()方法可以判断集合中是否有这个元素
public Object[] toArray(): 把集合中的元素,存储到数组中。
Iterator常用方法
public Boolean hasNext()方法可以判断下一个元素是否存在
public E next()方法可以得到下一个元素
package cn.itcast.day01.Collection;
import com.sun.org.apache.xpath.internal.operations.Bool;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
/**
* public Boolean add()方法可以在集合中添加一个元素
* public Boolean remove()方法可以移除一个元素
* public Boolean isEmpty()方法可以判断集合是否为空
* public int size() 返回集合元素个数
* public Boolean contains()方法可以判断集合中是否有这个元素
* public Object[] toArray(): 把集合中的元素,存储到数组中。
*/
/**
* Boolean hasNext()方法可以判断下一个元素是否存在
* E next()方法可以得到下一个元素
*/
public class CollectionTest {
public static void main(String[] args) {
//<E> E可以是包装类、自定义类型、引用类型
Collection<String> col = new ArrayList<>();
col.add("xxx");
col.add("yyy");
col.add("zzz");
Boolean t = col.remove("xxx");
System.out.println(col);
System.out.println("删除?"+t);
System.out.println("集合是否为空?"+col.isEmpty());
System.out.println("集合元素有"+col.size()+"个");
System.out.println("是否还有xxx?"+col.contains("xxx"));
System.out.println("=============");
Object []ojs = col.toArray();
for(Object e:ojs){
System.out.println(e);
}
}
}
泛型方法(泛型类)的定义与使用
使用泛型方法
package JAVA_Test5;
import java.util.Arrays;
public class Collection {
//泛型的使用方法
//在函数中使用
public static <T> void changePosion(T []array, int i, int j){
T temp = array[i];
array[i] = array[j];
array[j] = temp;
}
public static void main(String[] args) {
//第一种方法,定义泛型方法
String []strs = {"1","2","3"};
/*changePosion(strs,1,2);
System.out.println(Arrays.toString(strs));*/
Integer []ints = {1,2,3,4};
/*changePosion(ints,1,2);
System.out.println(Arrays.toString(ints));*/
//第二种定义泛型类
ArrayUtils<String> a1 = new ArrayUtils<>();
a1.reverse(strs);
System.out.println(Arrays.toString(strs));
ArrayUtils<Integer> a2 = new ArrayUtils<>();
a2.ChangePosition(ints,1,3);
System.out.println(Arrays.toString(ints));
}
}
泛型类
package JAVA_Test5;
public class ArrayUtils<T> {
public void ChangePosition(T[] array,int i,int j){
T temp = array[i];
array[i] = array[j];
array[j] = temp;
}
public void reverse(T[] array){
for(int i=0,j=array.length-1; i<j; ++i,--j){
T temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
List的两种使用
package JAVA_Test5;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ListForUse {
public static void main(String[] args) {
List<String> stringList = new ArrayList<>();
stringList.add("hello");
//stringList.add(1);报错,因为只能add进去String类型的
stringList.add("java");
Object[] s = stringList.toArray();
System.out.println(Arrays.toString(s));
//不使用泛型
List l = new ArrayList<>();
l.add("hello");
l.add(2020); //不进行类型检验
l.add(2020.996);
Object []s2 = l.toArray();
System.out.println(Arrays.toString(s2));
System.out.println(l.size());
}
}
List集合内嵌Map集合表示二维表数据的示例程序
package JAVA_Test5;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
//List集合内嵌Map集合表示二维表数据的示例程序(MapInList.java)
public class MapInList {
public static void main(String[] args) {
List<Map<String,Object>> mapList = new ArrayList<>();
Map<String,Object> person1 = new HashMap<>();
person1.put("id",1);
person1.put("name","蜘蛛侠");
person1.put("function","能爬树");
person1.put("power",1000);
Map<String,Object> person2 = new HashMap<>();
person2.put("id",2);
person2.put("name","钢铁侠");
person2.put("function","会打铁");
person2.put("power",2000);
mapList.add(person1);
mapList.add(person2);
//遍历
for(int i=0; i<mapList.size(); ++i){
System.out.println(mapList.get(i));
}
}
}
版权声明:本文为qq_26139541原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。