集合

List集合的使用及遍历

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Demo1 {

public static void main(String[] args) {
// 定义一个list集合
List list = new ArrayList();
//添加数据
list.add(99);
list.add("hello");
list.add('中');
list.add(true);
list.add(4,99);

//第一种遍历方法
for(int index=0;index<list.size();index++) {
System.out.println(list.get(index));
}
System.out.println("----------------------");
//第二种使用增强for(foreach)
for(Object obj:list){
System.out.println(obj);
}
System.out.println("----------------------");
//第三种 list自带的迭代器
Iterator it = list.iterator();
while(it.hasNext()) {
Object object = it.next();
System.out.println(object);
}
}

}

控制台输出: (list集合是有序,存储的数据可重复)

99
hello

true
99
----------------------
99
hello

true
99
----------------------
99
hello

true
99

 

set集合

import java.util.HashSet;
import java.util.Set;

public class Demo2 {

public static void main(String[] args) {
// 定义一个set集合
Set set = new HashSet();
//添加数据
set.add("hello");
set.add(123);
set.add(true);
set.add("hello"); //插入重复的数据会被忽略掉

//遍历
for(Object obj:set) {
System.out.println(obj);
}
}

}

控制台输出: (set跟list差不多,区别是不能存重复的数据)

hello
123
true

 

Queue(队列)

import java.util.LinkedList;
import java.util.Queue;

public class Demo4 {

public static void main(String[] args) {
// 定义一个队列集合
Queue queue = new LinkedList();
//添加数据
queue.offer("hello");
queue.offer(123);
//queue.add(123);
queue.offer(99.9D);

for(Object obj:queue) {
System.out.println(obj);
}
System.out.println("------------");

Object obj = null; //初始化
obj = queue.peek();//获取头部元素
System.out.println(obj);  
System.out.println(queue.size());  //打印个数

System.out.println("------------");
obj = queue.poll(); //获取头部元素 size前移(size-1)
System.out.println(obj);  
System.out.println(queue.size());  //打印个数

}

}

输出:

hello
123
99.9
------------
hello
3
------------
hello
2

 

list与数组之间转换

import java.util.Arrays;
import java.util.List;

public class Demo3 {
public static void main(String[] args) {
//数组转list
List list = Arrays.asList(2,5,7,9,8);

for(Object obj:list) {
System.out.println(obj);
}

//list转数组
Object obj[] = list.toArray();
System.out.println(Arrays.toString(obj)); //返回数组里的数据

}
}

输出:

2
5
7
9
8
[2, 5, 7, 9, 8]

 

案例

package com.text.map;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Test2 {

public static List getData() {
return Collections.EMPTY_LIST; //返回空的list
}
public static void main(String[] args) {
/*
int size = Test2.getData().size();
System.out.println(size);
*/

List list = new ArrayList();
list.add(1);
list.add(2);
List otherList = Collections.unmodifiableList(list);//将list变为不可修改的list
//otherList.add(3);
}

}

 

map集合

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class Demo5 {
public static void main(String[] args) {
//定义一个map集合
Map<String,String> map = new HashMap<String,String>();
       //以键值对方式存储数据
map.put("a", "123");
map.put("d", "hello");
map.put("b", "world");
map.put("aA", "java");


for(String value:map.values()) {//获取集合里的值
System.out.println(value);
}
System.out.println("-------");

Set<String> set = map.keySet();//获取集合里的键

for(String key:set) {
String value = map.get(key);
System.out.println(key+"="+value);
}
System.out.println("------推荐使用 ↓--------");
//Set> otherSet =map.entrySet();
for(Map.Entry<String,String> entry:map.entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key+"="+value);
}

}
}

输出: (map集合无序)

java
123
world
hello
-------
aA=java
a=123
b=world
d=hello
------推荐使用 --------
aA=java
a=123
b=world
d=hello

 

你可能感兴趣的:(集合)