Set、List和Map是java collection中最常用的三种数据结构。

Set是集合,不允许有重复的元素,List是动态数组实现的列表,有序可重复,Map是key-value的键值对,用于快速存取。

Set的常用方法:

add() 插入元素

clear() 清空集合

contains() 是否包含某元素

equals() 是否和某对象完全相同

isEmpty() 是否为空

remove() 删除某元素

List常用方法:

add() 插入元素

clear() 清空集合

contains() 是否包含某元素

equals() 是否和某对象完全相同

isEmpty() 是否为空

remove() 删除某元素

get() 按照索引获取元素值

Map常用方法:

put(key,value) 增加新对象

containsKey() 是否包含key

containsValue() 是否包含value

keySet() 把key转为Set

Values() 把value转为List

package com.company;

import java.util.*;

/**
* Created by wangbin10 on 2017/1/5.
*/
public class Collection {
public static void main(String[] args){
//Set
Set<Integer> s1 = new HashSet<Integer>();
for(int i=0;i<10;i++){
s1.add(i);
}
s1.remove(5);
System.out.println(s1);
System.out.println(s1.size());
System.out.println(s1.isEmpty());
//ArrayList
List<String> s2=new ArrayList<String>();
s2.add("one");
s2.add("two");
s2.add("three");
s2.add("four");
s2.remove(0);
System.out.println(s2.size());
System.out.println(s2.get(2));
System.out.println(s2.contains("two"));
System.out.println(s2.equals(s2));
Iterator it=s2.iterator();
while(it.hasNext()){
System.out.println(it.next());
} //HashMap
Map<String,Integer> s3=new HashMap<String, Integer>();
s3.put("zhao",1);
s3.put("qian",2);
s3.put("sun",3);
s3.put("li",4);
System.out.println(s3.get("sun"));
System.out.println(s3.keySet());
System.out.println(s3.values());
System.out.println(s3.containsKey("wang"));
System.out.println(s3.containsValue(5));
System.out.println(s3.remove("qian"));
}
}

java集合框架collection(3)Set、List和Map的更多相关文章

  1. Java集合框架Collection

    转自:http://www.cdtarena.com/javapx/201306/8891.html [plain] view plaincopyprint?01.在 Java2中,有一套设计优良的接 ...

  2. java集合框架collection(6)继承结构图

    根据<java编程思想>里面的说法,java集合又叫容器,按照单槽和双槽分为两类,Collection和Map,这两个都是接口. 一.Collection Collection下面又分了三 ...

  3. JAVA集合框架 - Collection

    collection大致介绍 Collection是集合层次结构中的根接口. 集合表示一组对象.有些集合允许重复元素,有些则不允许.有些是有序的,有些是无序的. JDK没有提供此接口的任何直接实现:它 ...

  4. Java集合框架:Set、List、Map等介绍

    目录 1.Java集合类基本概念 2.Java集合类架构层次关系 1.Java集合类基本概念 在编程中,常常需要集中存放多个数据.从传统意义上来讲,数组是我们一个很好的选择,前提是我们事先已经明确知道 ...

  5. java集合框架collection(4)HashMap和Hashtable的区别

    HashMap和Hashtable的区别 HashMap和Hashtable都实现了Map接口,但决定用哪一个之前先要弄清楚它们之间的分别.主要的区别有:线程安全性,同步(synchronizatio ...

  6. java集合框架collection(5)HashMap和TreeMap

    上图转载自:http://www.cnblogs.com/vamei/archive/2013/04/15/3000913.html 一.区别和联系 1.迭代器 迭代器是一种设计模式,它是一个对象,它 ...

  7. java集合框架collection(2)ArrayList和LinkedList

    ArrayList是基于动态数组实现的list,而LinkedList是基于链表实现的list.所以,ArrayList拥有着数组的特性,LinkedList拥有着链表的特性. 优缺点 ArrayLi ...

  8. Java集合框架Collection(1)ArrayList的三种遍历方法

    ArrayList是java最重要的数据结构之一,日常工作中经常用到的就是ArrayList的遍历,经过总结,发现大致有三种,上代码: package com.company; import java ...

  9. Java集合框架(List,Set,Map)

    单列集合基本框架 List接口特点:1. 它是一个元素存取有序的集合.例如,存元素的顺序是11.22.33.那么集合中,元素的存储就是按照11.22.33的顺序完成的). 2. 它是一个带有索引的集合 ...

随机推荐

  1. Codeforces 85B. Embassy Queue【段树、馋】

    标题效果: 每个人都应该申请签证必须向大使馆3种程序,而这3个步骤做的顺序是固定的.通过各种形式的手续给出多少,它需要对每个过程的处理时间,有多少人会来办理手续,什么时间来.要求的是全部人分别在大使馆 ...

  2. C++ Lambda表达式基本用法(言简意赅,非常清楚)

    创建一个匿名函数并执行.Objective-C采用的是上尖号^,而C++ 11采用的是配对的方括号[].实例如下: 1 2 3 4 5 6 7 8 9 #include <iostream> ...

  3. hudson搭建经验总结

    作者:朱金灿 来源:http://blog.csdn.net/clever101 hudson 是一种革命性的开放源码 CI (持续集成)服务器,随着工程源码越来越庞大,把源码编译工作放在本地机器已不 ...

  4. WPF中制作立体效果的文字或LOGO图形(续)

    原文:WPF中制作立体效果的文字或LOGO图形(续) 上篇"WPF中制作立体效果的文字或LOGO图形"(http://blog.csdn.net/johnsuna/archive/ ...

  5. Android到您的计算机使用命令行屏幕捕获和出口

    声明:本博客为原创博客,未经同意.不得转载! 原文链接为http://blog.csdn.net/bettarwang/article/details/27819525 大多数人最经常使用的截屏方法可 ...

  6. 机器学习: Python with Recurrent Neural Network

    之前我们介绍了Recurrent neural network (RNN) 的原理: http://blog.csdn.net/matrix_space/article/details/5337404 ...

  7. Effective JavaScript Item 38 调用父类的构造函数在子类的构造函数

    作为这一系列Effective JavaScript的读书笔记. 在一个游戏或者图形模拟的应用中.都会有场景(Scene)这一概念.在一个场景中会包括一个对象集合,这些对象被称为角色(Actor). ...

  8. ObjectDataProvider

    <Window.Resources> <ObjectDataProvider x:Key="personList" ObjectType="{x:Typ ...

  9. WPF 拖动多个文件到窗体 添加文件信息

    将Window的AllowDrop属性设置为true window添加Drop事件 private void Window_Drop(object sender, DragEventArgs e) { ...

  10. 利用winIO3.0进行windows10 64bit端口读取

    一.winIO介绍 WinIO程序库允许在32位的Windows应用程序中直接对I/O端口和物理内存进行存取操作.通过使用一种内核模式的设备驱动器和其它几种底层编程技巧,它绕过了Windows系统的保 ...