`
GLC
  • 浏览: 110815 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

java集合框架简单总结

 
阅读更多
java.util.Iterator<Student> it = sSet.iterator();

java集合框架总结:
1、常用的集合在系统中定义了三大接口:Set、List、Map;
a、List接口:提供了有序的访问集合中元素的方法、并且允许数据重复出现。操作的一般方法是将所用到的类放到接口的括号中。
如:
List<Student> list=ltest.getUserList(20);这样即实现了创建多个对象;

b、对其访问,如一般类的访问方法:
//实例化一个List接口、用来存储学生信息

List userList=new ArrayList();
//实例化一个随机数
Random random=new Random();
for(int i=0;i<userCount;i++){
String name=((char)(65+i))+"用户:";
int ran=random.nextInt(20);
Student ui=new Student(name,ran);
userList.add(ui);
System.out.println(ui.getName()+"-------------->"+ui.getScore());

}
return userList;
c、对其增删改查:因为是有序的、且已排列好;所以系统为我们提供了get()的方法、例如对它的删除操作:因为是链式结构、所以删除后不能往后移、但如果没有删除、则进行往后移的操作;例:
for(int i=0;i<userList.size();){

Student stu=userList.get(i);
if(stu.getScore()<score){
userList.remove(i);
}else {
i++;
}
}
}
2、Set接口:无序的集合、且其数据不可重复。
因为是无序的、系统为我们提供了HashSet()的方法;
:// 创建一个集合对象

Set set = new java.util.HashSet();

b、对其删除操作过程:须先进行组织排列、所用到的迭代器:iterator()
例:c、删除操作过程:不能将其直接删除、需要将要删除的数据放入另一Set接口中、再用其方法removeAll()将其删除
例:
java.util.Iterator<Student> it = set.iterator();

// 实例化一个Set接口,存储将小于score的学生信息并将其删除
Set<Student> set1 = new HashSet();
// 遍历
while (it.hasNext()) {
Student st = it.next();
if (st.getScore() < score) {
set1.add(st);
}
}
// 移出set1的值
set.removeAll(set1);
3、Map接口操作:其特点是映射关系、接口中须放入两个数据、一个是其唯一的序号、另一个就是其对应的对象;例:Map<String,Student>
b、其访问操作是:先通过迭代器对其唯一的序号进行有序操作、再用hasNext进行访问
://得到Map中所有key集合

java.util.Set<String> set=um.keySet();
java.util.Iterator<String> it=set.iterator();
//迭代key
while(it.hasNext()){
String key=it.next();
//取出key对应的value
Student uf=um.get(key);
System.out.println(key+">>>>>>>"+uf.getName()+"<<<<<<<<<<"+uf.getScore());
}
c、其删除操作、和Set接口类似,需要先建立另一个Map接口、将需要删除的数据加入接口中、再用其删除方法removeAll().
://取出所对应的唯一的编号

java.util.Set<String> set=map.keySet();
java.util.Iterator<String> it = set.iterator();
// 实例化一个Set接口,存储将小于score的学生信息并将其删除
Set<String> set1 = new HashSet();
// 遍历
while (it.hasNext()) {
String st = it.next();
//取出key对应的value
Student uf=map.get(st);
if (uf.getScore() < score) {
set1.add(st);
}
}
// 移出set1的值
set.removeAll(set1);
分享到:
评论

相关推荐

    Java集合框架的知识总结.doc

    本文档先从整体介绍了Java集合框架包含的接口和类,然后总结了集合框架中的一些基本知识和关键点,并结合实例进行简单分析。 Java的集合类主要由两个接口派生而出:Collection和Map,Collection和Map是Java集合框架...

    Java 基础核心总结 +经典算法大全.rar

    集合框架总览 -、Iterator Iterable ListIterator 二、Map 和 Collection 接口Map 集合体系详解 HashMap LinkedHashMap TreeMap WeakHashMap Hashtable Collection 集合体系详解 Set 接口 AbstractSet 抽象类...

    Java从入门到精通.pdf

    十四万字总结,PDF包含了十四个大模块:Java基础知识,数据结构,算法,Java集合框架,Java8新特性,操作系统,网络原理,Java多线程及并发编程,Java的IO模型及网络编程,JVM,Mysql,JavaWeb和一个仿Tomcat实现的...

    java 编程入门思考

    2. Java的学习 3. 目标 4. 联机文档 5. 章节 6. 练习 7. 多媒体CD-ROM 8. 源代码 9. 编码样式 10. Java版本 11. 课程和培训 12. 错误 13. 封面设计 14. 致谢 第1章 对象入门 1.1 抽象的进步 1.2 对象的接口 1.3 ...

    java 面试题 总结

    JAVA相关基础知识 1、面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用...

    Java语言基础下载

    第一章:Java开始 1 学习目标 1 Java历史 2 Java技术概述 3 Java技术的优点 3 Java虚拟机 4 类加载器 6 Windows环境变量 8 内容总结 13 独立实践 14 第二章: 面向对象概述 15 学习目标 15 面向对象(Object Oriented...

    Java初学者入门教学

    2. Java的学习 3. 目标 4. 联机文档 5. 章节 6. 练习 7. 多媒体CD-ROM 8. 源代码 9. 编码样式 10. Java版本 11. 课程和培训 12. 错误 13. 封面设计 14. 致谢 第1章 对象入门 1.1 抽象的进步 1.2 对象的接口 1.3 ...

    java联想(中文)

    1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是Web? 1.11.2 客户端编程 1.11.3 服务器端编程 1.11.4 一个独立的...

    JAVA_Thinking in Java

    2. Java的学习 3. 目标 4. 联机文档 5. 章节 6. 练习 7. 多媒体CD-ROM 8. 源代码 9. 编码样式 10. Java版本 11. 课程和培训 12. 错误 13. 封面设计 14. 致谢 第1章 对象入门 1.1 抽象的进步 1.2 对象的接口 1.3 ...

    Thinking in Java简体中文(全)

    2. Java的学习 3. 目标 4. 联机文档 5. 章节 6. 练习 7. 多媒体CD-ROM 8. 源代码 9. 编码样式 10. Java版本 11. 课程和培训 12. 错误 13. 封面设计 14. 致谢 第1章 对象入门 1.1 抽象的进步 1.2 对象的接口 1.3 ...

    Thinking in Java 中文第四版+习题答案

    2. Java的学习 3. 目标 4. 联机文档 5. 章节 6. 练习 7. 多媒体 8. 源代码 9. 编码样式 10. Java版本 11. 课程和培训 12. 错误 13. 封面设计 14. 致谢 第1章 对象入门 1.1 抽象的进步 1.2 对象的接口 1.3 实现方案的...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    11.2.5 总结:类的修饰符 297 11.3 方法的修饰符 297 11.3.1 方法的访问控制符 298 11.3.2 public:没有限制的修饰符 299 11.3.3 protected:仅对子类和同包的类可见 300 11.3.4 默认控制符:仅在本包中可见 ...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    11.2.5 总结:类的修饰符 297 11.3 方法的修饰符 297 11.3.1 方法的访问控制符 298 11.3.2 public:没有限制的修饰符 299 11.3.3 protected:仅对子类和同包的类可见 300 11.3.4 默认控制符:仅在本包中可见 ...

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm ------------------------------------------------- 本教程由yyc,spirit整理 ------------------------------------------------- “Thinking in Java...

    Java面试宝典2010版

    43、Java中的异常处理机制的简单原理和应用。 28 44、请写出你最常见到的5个runtime exception。 28 45、JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出...

    Think in Java(中文版)chm格式

    1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是Web? 1.11.2 客户端编程 1.11.3 服务器端编程 1.11.4 ...

    21天学通Java-由浅入深

    ”:非运算符 54 3.4.4 逻辑运算符总结 54 3.5 三元运算符 55 3.6 位运算符 55 3.6.1 “&”:按位与运算符 56 3.6.2 “|”:按位或运算符 56 3.6.3 “^”:按位异或运算符 57 3.7 位移运算符 57 3.7.1 “&gt;&gt;”:带...

    Thinking in Java(中文版 由yyc,spirit整理).chm

    1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是Web? 1.11.2 客户端编程 1.11.3 服务器端编程 1.11.4 一个独立的...

    Android代码-WLeetCode

    后续,在空闲时间总结了单链表的面试题目,排序算法等知识,目前在整理 Java 集合框架相关源码,相关文章在本人的掘金专栏和简书与CSDN博客都有发布。欢迎关注本项目的朋友去浏览。 &gt; -- 2018年04月12日更新 Java ...

    fluent-traversable:支持通过函数方式对集合和数组进行操作。 受 guava 的 FluentIterable、java8 Stream 框架和 scala 的启发

    这个库的灵感来自 java8 流框架、guava FluentIterable 和 Scala 功能特性。 为了充分享受这个库,欢迎了解基本的功能模式。 总结和主要特点: 允许使用数组和所有实现Traversable接口的东西 基于函数式编程概念...

Global site tag (gtag.js) - Google Analytics