`
卿雯candy
  • 浏览: 16760 次
  • 性别: Icon_minigender_2
  • 来自: 永州
文章分类
社区版块
存档分类
最新评论

Java集合框架

 
阅读更多
  Java中集合类定义主要是在java.util.*包下面,常用的主要有三大接口
1,java.util.Set接口:
  Set是一个无序的集合,对集合成员的访问和操作是通过集中对象的引用进行的,所有Set集合中不能有重复对象,要查找某一元素,必须通过它的值来查找,Set是一个接口,我们只能使用它的实现子类,常用的有HashSet,接下来是Set集合的使用示例:
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class SetTest {
        //程序入口
	public static void main(String args[]){
		Set<String> set=SetTest.createSet();
		SetTest.printSet(set);
		System.out.println();
		 set.add("小明");
		 System.out.println();
		 SetTest.printSet( set);
		 //删除的元素必须是值,而不能是位置
		 set.remove("小明");
		 System.out.println();
		 SetTest.printSet(set);
		
		}
	public static Set<String> createSet(){
		//实例化set集合对象
		Set<String> set=new HashSet<String>();
		//循环给List集合添加数据
		for(int i=0;i<10;i++){
			set.add("学生"+i);
		}
		return set;
	}
	public static void printSet(Set<String> set){
		//得到Set集合的迭代器对象
		Iterator<String> iter=set.iterator();
		//判断Set集合中是否还有元素可以进行迭代
				while(iter.hasNext()){
				//取出集合中的数据
					String str=iter.next();
					System.out.print(str+'\t');
				}
		}
	}


2,List是一个有序的集合,其对象以线性方式存储,可以根据List中对象放入时的次序来查找对象,元素数据可以重复,跟我们以前学的数组队列很像,示例代码如下
import java.util.ArrayList;
import java.util.List;

public class ListTest {
       //程序入口
	public static void main(String args[]){
		List<String> list=ListTest.createList();
		list.add("小明");
		//list.remove(2);
		ListTest.printList(list);
	}
	//取得指定数量的的一个List集合
	public static List<String> createList(){
		//实例化集合对象
      List<String> list=new ArrayList<String>();
      //循环给List集合添加数据
      for(int i=0;i<10;i++){
    	  list.add("学生"+i);
      }
      return list;
	}
	//打出List中的内容
	public static void printList(List<String> list){
		for(int i=0;i<list.size();i++){
			//得到集合中的数据
			String str=list.get(i);
			System.out.println(str);
		}
	}
}


3,Map采用键(Key)--值(Value)对的方法,Key是不允许重复的,Value是允许重复的。Map中存放的对象是一对一对的,它的key可以看作Set集合,因此我们查找Map元素时,必须要通过迭代器来查找它的key值,它也是接口,只能由实现子类来实现,常用的有HashMap,HashTable,示例代码如下:
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class MapTest {
      public static void main(String args[]){
    	  Map<String,Student> map=MapTest.createMap();
    	  MapTest.printMap(map);
    	 System.out.println();
    	 map.put("ID11",new Student("张三",4));
    	 map.remove("ID2");
    	 MapTest.printMap(map);
      }
      //创建Map集合的方法
      public static Map<String,Student> createMap(){
    	  //创建一个Map集合对象
    Map<String,Student> map=new HashMap<String,Student>();
    //循环给Map集合添加数据
    for(int i=0;i<10;i++){
    	map.put("ID"+i, new Student("姓名"+i,i));
    }
    return map;
      }
      //打印Map集合的方法
      public static void printMap(Map<String,Student> map){
    	  //获取到key的Set集合对象
    	  Set<String> set=map.keySet();
    	  //得到Set集合的迭代器对象
    	Iterator<String> iter=set.iterator();
    	//判断Set集合是否可以进行迭代
    	  while(iter.hasNext()){
    		  //得到集合中的数据
    		  String key=iter.next();
    		  //取出迭代器元素对象
    		  Student stu=map.get(key);
    		//根据Key来获取Map的Value
    		  stu.study();
    	  }
      }
}

这里还要运用到一个Student类
public class Student {
       public int no;
       public String name;
       public Student(String name,int no){
    	   this.name=name;
    	   this.no=no;
       }
       public void study(){
    	   System.out.println(name+"正在学习"+"no"+no);
       }
}

   Set和List集合是Collection的子类,但是Map不是它的子类······
分享到:
评论

相关推荐

    【Java】Java集合框架思维导图。

    xmind格式的Java集合框架学习导图,包括Collection接口/Map接口以及具体实现类。 同样包含大厂面试题,也在导图中有所体现。 能学到什么: 更加成体系的知识框架,更加全面的、系统的知识。 思维导图: 思维导图具有...

    Java集合框架总结

    Java集合框架总结Java集合框架总结Java集合框架总结Java集合框架总结Java集合框架总结Java集合框架总结

    Java集合框架详解

    Java集合框架详解Java集合框架详解Java集合框架详解

    java集合框架图

    java集合框架图java集合框架图java集合框架图java集合框架图java集合框架图

    java集合框架面试题

    内含大量java集合框架方面常被面试官问到的经典面试题。

    Java集合框架.ppt

    集合是将多个元素组成一个单元的...Java集合框架,为我们提供了一套性能优良、使用方便的接口和类,我们不必再重新发明轮子,只需学会如何使用它们,就可以处理实际应用中出现的问题了Java集合框架位于java.util包中

    JAVA集合框架学习总结

    本文档为本人学习 java 集合框架期间的学习总结笔记,希望对新学习的朋友有所帮助和参考价值。本人java 开发时间不是太长,可能存在不完善或不对之处,欢迎指正!

    6.java集合框架.zip

    6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6....

    JAVA学习 Java集合框架.ppt

    JAVA学习 Java集合框架.ppt

    Java集合框架学习笔记

    学习Java集合框架的讲义、笔记,希望大家多提意见。时间关系没有Collections,Arrays的内容,以后补上!

    数据结构和Java集合框架 英文版

    学生通过学习方法描述和应用,可以逐步理解并有效地使用数据结构,还可以了解这些数据结构的多种实现,包括在Java集合框架中提供的一些实现。 本书内容非常丰富,且在每章章尾提供编程项目,以帮助学生提高实践能力...

    java 集合框架

    Java集合框架,set、list接口及其子集,接口的继承关系

    Java集合框架使用总结

    Java集合框架使用总结 前言: 本文是对Java集合框架做了一个概括性的解说,目的是对Java集合框架体系有个总体认识,如果你想学习具体的接口和类的使用方法,请参看Java API文档。 一、概述 数据结构对程序设计...

    Java集合框架常见面试题夜间阅读版.pdf

    java集合框架

    一个扑克游戏,用于Java集合框架练习.zip

    一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合框架练习 一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合框架练习 一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合...

    java集合框架笔记

    List set ArraryList Map java集合框架笔记 基于Array的List,其实就是封装了Array所不具备的一些功能方便我们使用

    数据结构和Java集合框架

    数据结构和Java集合框架,国外经典教材,开发必备

    Java集合框架常见面试题.pdf

    Java集合框架常见面试题.pdf

    Java集合框架.pdf

    Java集合框架概述 Java集合框架是一个抽象数据类型的框架,它提供了一组接口和类,可用于处理各种类型的数据结构,如列表、队列、集、映射等。 Java集合框架的主要特点是: 1、可扩展性:Java集合框架提供了一组可...

Global site tag (gtag.js) - Google Analytics