package jihe;
import java.util.ArrayList;
import java.util.List;
/**
* 测试集合的方法
*/
public class Aggregate
{ //声明一个 list类型的变量
public static List list;
public static void main(String[] args)
{ //创建一个list的对象
list=new ArrayList();
//使用add方法加入一个对象 可以是String
list.add("123");
list.add("345");
//remove删除指定下标位置的内容 后面的内容会向前移动
list.remove(0);
//得到指定下标位置的内容
System.out.println(list.get(0));
//clear清除所有内容
list.clear();
//size显示内容长度
System.out.println(list.size());
//循环加入元素
for (int i = 0; i < 20; i++)
{
list.add("呵呵"+i);
}
System.out.println(list.size());
//lastIndexOf获取某个元素最后一次出现的位置
System.out.println("最后一次"+list.lastIndexOf("呵呵12"));;
//indexOf获取某个元素第一次出现的位置
System.out.println("第一次"+list.indexOf("呵呵18"));;
//isEmpty判断集合内容是不是为空
System.out.println(list.isEmpty());
//subList截取某一段内容 生成一个新的集合
List list1=list.subList(0, 10);
System.out.println(list1.size());
//增强for循环遍历
for(Object o:list1)
{
System.out.println(o.toString());
}
}
}
package jihe;
/**
* 测试linklist
*
*/
import java.util.List;
import java.util.LinkedList;
public class LinkList
{
static LinkedList linkList;
public static void main(String[] args)
{ //创建一个Linkelist 链表集合
linkList=new LinkedList();
//向头部添加
linkList.addFirst("这是头");
//向尾部添加
linkList.addLast("这是尾");
System.out.println(linkList.get(1));
//删除头部
linkList.removeFirst();
System.out.println(linkList.get(0));
//删除尾部
linkList.removeLast();
}
}
package jihe;
import java.text.Collator;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
/**
* 测试hashMap
*
*/
public class MapTest
{
public static Map map;
public static void main(String[] args)
{
//创建对象
map=new HashMap();
//用put加入数据
map.put(1, "123");
map.put("123", 111);
map.put(2, 2);
map.put(3, 4);
map.put(5, 6);
//查看内容多大
System.out.println(map.size());
//删除某个内容
map.remove(1);
//获取指定内容
System.out.println(map.get("123").toString());
//containsKey 判断有没有要查的键
System.out.println(map.containsKey("123"));
//containsValue判断有没有指定的值
System.out.println(map.containsValue("123"));
//keySet把键转换成set集合
Set set=map.keySet();
//用增强for循环遍历
for(Object object:set)
{
System.out.print(object.toString()+" ");
}
//values把map里的值转换成set集合
Collection collection=map.values();
//用增强for循环遍历
for(Object object:collection)
{
System.out.println(object.toString());
}
//将键和值与他们的关系转换成set集合
Set set2=map.entrySet();
//用增强for循环遍历
for(Object object:set2)
{
System.out.println(object.toString());
}
}
}
package jihe;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
//测试set集合
public class SteTest
{ //声明set变量
public static Set set;
public static void main(String[] args)
{ //创建一个set的子类
set=new HashSet();
//在里面添加内容 会确保唯一性
set.add("123");
//语法没问题 但无法放入
set.add("123");
set.add("456");
//查看大小
System.out.println(set.size());;
//获取迭代器
Iterator integer=set.iterator();
//循环遍历 hasNext判断是否有下一行
while (integer.hasNext())
{ //next 获取下一行内容
System.out.println(integer.next().toString());
}
}
}
package Student;
import java.util.List;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Set;
/**
* 测试HashMap Arraylist
*/
public class Test
{
public static void main(String[] args)
{
//创建一个ArrayList集合用范形 只能放Student
ArrayList<Student> arrayList=new ArrayList<Student>();
//创建学生类用于加入
Student a=new Student("张三", "一班", 33.5);
Student b=new Student("张s", "二班", 34);
Student c=new Student("张d", "一班", 37.5);
Student d=new Student("张f", "二班", 37);
Student e=new Student("张g", "一班", 77);
Student f=new Student("张h", "三班", 99.7);
//创建HashMap集合 用来存放集合
HashMap<String,List<Double>> hashMap=new HashMap<String,List<Double>>();
//声明存放学生成绩的集合
List<Double> douList;
//循环获取学生信息 循环的次数是arrayList 的内容大小
for (int i = 0; i < arrayList.size(); i++)
{
//获取学生的班级信息 作为键
String key =arrayList.get(i).getBanJi();
//用上面获取的键作为参数 获取hashMap对应的值
List<Double> list=hashMap.get(key);
//判断list里面有没有内容来判断是不是有值
if(list==null)
{ //创建上面声明过的集合用来成绩
douList=new ArrayList<Double>();
//取出arrayList i位置的对象在取出这个对象的成绩
double d1=arrayList.get(i).getChenJi();
//将这个学生的成绩存放在douList中
douList.add(d1);
//将这个学生的班级作为键 成绩的集合作为值存入hashMap
hashMap.put(key,douList);
}else{
//取出这个键对应的值 返回的值为List类型
List list2=hashMap.get(key);
//取出这个arrayList中的i对象 在取出这个对象的成绩
double d1=arrayList.get(i).getChenJi();
//将新的这个班的学生的分数加入这个集合
list2.add(d1);
//将这个key做为键 在将新加入内容的集合作为值传入
hashMap.put(key,list2);
}
}
//将HashMap的键内容导出为set集合
Set set=hashMap.keySet();
}
}