Java中常用Java 集合框架List、set、map分析以及迭代器Iterator的用法

  Java中常用Java 集合框架List、set、map,Java 集合框架存在的意义是为了

更方便去解决数据的问题。

一 学习集合框架必然看过一张图
在这里插入图片描述

LIst、Set分别去实现了Collection接口
Map不同于List、Set

二 思维导图
在这里插入图片描述
1 List
在这里插入图片描述
1.1 ArrayList例子

 package com.sxau.rjxy.collection;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ArrayListdemo {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
      List<String> a=new ArrayList<String>();
      a.add("myt");
      a.add("pzd");
      a.add("gmd");
      a.add("gmdX");
      a.set(2,"dzp");
      a.remove(3);
      //使用增强for循环遍历
      for(String x:a) {
    	  System.out.println(x);
      }
	System.out.println("使用迭代器遍历");     
  	Iterator<String> ite=a.iterator();
  	while(ite.hasNext()) {//判断下一个是否有值
  		System.out.println(ite.next());
  	 }
	}
	//使用迭代器去循环遍历
}

在这里插入图片描述

1.2LinkedList的例子

package com.sxau.rjxy.collection;

import java.util.Iterator;
import java.util.LinkedList;

public class LinkListDemo {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
    LinkedList<String> list=new LinkedList<String>();
    list.add("myt1");
    list.add("myt2");  
    list.add("myt3"); 
    list.add("myt4");
    list.addFirst("pzd");
    list.addLast("gmd");
    list.removeFirst();
    list.removeLast();
	
	System.out.println("使用迭代器遍历");     
  	Iterator<String> ite=list.iterator();
  	while(ite.hasNext()) {//判断下一个是否有值
  		System.out.println(ite.next());
  	 }
	}
}

在这里插入图片描述
2 Set
在这里插入图片描述
2.1 HashSet

package com.sxau.rjxy.collection;

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

public class HashSetDemo {
	public static void main(String[] args) {
   Set<String> set=new HashSet<String>();
    set.add("myt1");
    set.add("myt2");  
    set.add("myt3"); 
    set.add("myt4");
//   set.add("myt");
//   set.add("pzd");
//   set.clear();//删除集合中所有元素
//   set.add("gmd");
//   set.add("myt");
//   set.add("gmd");//重复的数据无法加入
//   System.out.println("pzd在不在set集合里面"+set.contains("pzd"));//contains判断是否存在
//   set.remove("gmd");//去除数据
   Iterator<String> ite=set.iterator();
 //使用增强for循环遍历
   while(ite.hasNext()) {
	   System.out.println(ite.next());
	   
   }
	}	
}

在这里插入图片描述
2.2 TreeSet

package com.sxau.rjxy.collection;

import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;

public class TreeSetDemo {
	public static void main(String[] args) {
		 Set<String> treeSet=new TreeSet<String>();
		    treeSet.add("myt1");
		    treeSet.add("myt2");  
		    treeSet.add("myt3"); 
		    treeSet.add("myt4");
		    
		    System.out.println( treeSet.contains("myt4"));
		    Iterator<String> ite=treeSet.iterator();
		    while(ite.hasNext()) {
		    	System.out.println(ite.next());
		    }
	}
}

在这里插入图片描述
3 HashMap
在这里插入图片描述
3.1

 package com.sxau.rjxy.collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class HashMapDemo {
	 public static void main(String[] args) {
   Map<Integer,String> map=new HashMap<Integer,String>();
   map.put(1,"myt1");//添加
   map.put(2,"myt2");
   map.put(3,"myt3");
   map.put(4,"myt4");
   map.put(5,"myt5");
   System.out.println( map.get(1));//得到map
   map.remove(1);//删除元素
   System.out.println( map.get(1));//得到map 
   Iterator<Map.Entry<Integer,String>> ite=map.entrySet().iterator();
  //采用Entry内部类来表示一个映射项,通过Map.entrySet遍历key和value
   //entrySet()返回了 HashMap 中所有映射项的一个 set 集合视图
   Iterator it = map.entrySet().iterator();  
   Iterator Key = map.keySet().iterator();// keySet是键的集合
   Iterator values = map.values().iterator();
  System.out.println("第一种 遍历Map");
   while(ite.hasNext()) {
	   System.out.println(ite.next());	  
   }
   System.out.println("第二种 遍历Map ");
   while(it.hasNext()) {
	   System.out.println(it.next());
	  
   }
   System.out.println("第三种 获取Key");
   while(Key.hasNext()) {
	   System.out.println(Key.next());
	   
   }
   System.out.println("第四种 获取value");
   while(values.hasNext()) {
	   System.out.println(values.next());
	   
   }
	 }
}

在这里插入图片描述

三 迭代器遍历
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值