Java三大类集合中各自的方法、属性,和集合的如何遍历

摘自:http://blog.sina.com.cn/s/blog_531101430100ltpe.html
集合问题三大集合: List集合 Set集合 Map集合.
A:解决集合问题。
(1)最常用的集合: List、Set、Map
List集合有包括ArrayList集合和Vector集合,它们两者的区别在于 ArrayList集合是线程不安全的,而Vector集合是线程安全的,但是在开发中线程安全问题一般能够解决,所以 一般都用ArrayList集合而不太用 Vector集合,这一点在以前的时候也提到过, List集合一般存数数据量在5000条数据左右。
(2)Set集合时存储顺序给我们呈现一种 无序的状态,其实也并非是无序,它是 按照Assic码的大小存储数据的。而不是按照数据的大小,所以给我们的感觉就是无序的。
(3)Map集合时开发当中最长用到的集合,我们用的request对象底层就是一个Map集合。而我们所有的集合的底层都是数组的形式。Map集合是一键一值的顺序来进行存储。和requestd对象的setAttribute方法有点像,所以说request对象的底层实际是一个Map集合。
(4)List集合中的方法,和如何来遍历List集合。
定义一个List集合一般这么来定义,前面是一个List对象,而后面对应着List集合中要进行定义的对象,这样方便后期的维护:
            List<String> list = new ArrayList<String>();
//我们简单给这个集合赋值。现在这个集合中有五个值了。
for(int i = 0 ; i < 5 ; i++){
list.add(String.valueOf(i));
}
//add方法时追加的意思,意思是在集合的末尾在追加一个数值。
list. add(2, "a");
//contains方法是看看集合中是否包含这个对象,其中contains里面放入的就是这个对象。
list. contains("a");
//indexOf是查看我要查看的这个对象在集合中从开始数是第几个,索引号是多少,默认从0开始。
list. indexOf("a");
//lastIndexOf是从末尾开始数,它和indexOf的作用是一样的。
list. lastIndexOf("1");
//set方法时插入一个数据,和add方法略有不同,set方法是在指定的位置上插入一个数据。
list. set(2, "a");
//把List集合以字符串的形式输出出来,因为默认List集合默认是以字符串类型进行存储的,所以取数据的时候也可以用字符串形式取得出来。
list. toString();
//这种遍历数组或集合的方式是Java中所特有的,和foreach循环遍历差不多,其含义都一样,前面是数据类型加变量名然后一个:后面是要遍历的数组或集合的名称。
for(String str : list){
System.out.println(str);
}
}
(5) 遍历Set集合
Set<String > set = new  HashSet<String >();//首先也是先定义一个泛型
//普通的for循环进行遍历即可。
for(int i = 0 ; i < 5 ; i++){
set.add(String.valueOf(i));
}
//或者这么进行遍历
for(String str : set){
System.out.println(str);
}
(6) Map集合如何进行赋值,和Map集合中的方法,以及如何遍历Map集合。
Map map = new HashMap();
 
 
// map.put("name1", new Users(1,"hello"));
map.put("name1", "value1");
map.put("name2", "value2");
map.put("name3", "value3");
 
 
 
 
// map.put("name1", "hello");
 
 
// System.out.println(((Users) map.get("name1")).getId());
 
 
// System.out.println(map.containsKey("name5"));
 
// map.clear();//将Map集合的所有的值都清空。
 
 
// System.out.println(map.isEmpty());
 
 
//  Set set = map.keySet();
//
//  Iterator iter = set .iterator();//定义一个迭代器进行遍历得到的Map集合中的key的集合。
//用迭代器遍历集合的方法 .hasNext()方法。
//  while(iter.hasNext())
{
 
//一定先定义一个字符串来接收迭代器遍历出来的数值。
//      String name = iter.next().toString();
//打印出找到的Map集合中的Key值,然后用Map集合中的方法找到这个Key值对应的名称,用get方法进行提取。 System.out.println( name+ map .get( name));
//
// }
//第二种遍历Map集合的方式,借助entry实体对象,Map集合中有几个键值对,就有几个entry实体对象。可以定义一个Set集合的泛型,接收Map集合中所有的键值对,也就是所有的entry实体。
 
Set<Entry> set = map.entrySet();
//对Set集合进行遍历。
for(Entry entry : set){
System.out.println(entry.getKey()+ entry.getValue());
}

转载于:https://www.cnblogs.com/wh-king/articles/2969552.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值