一、Map 名值对存储的。 常用派生类HashMap类

添加:

put(key,value)往集合里添加数据

删除:

clear()删除所有

remove(key)清除单个,根据k来找

获取:

size()获取元素的数量

get(key)根据key获取该数据

containsKey(key)根据key查找集合中有没有该内容,有返回true ,没有返回false

containsValue(value)根据value查找集合中有没有改内容,有返回true,没有返回false

    public static void main(String[] args){
Map map = new HashMap();
map.put(1, "一");
map.put(2, "二");
map.put(3, "三");
map.put(4, "四"); map.remove(1); //根据key删除
System.out.println("有"+map.size()+"个元素");
System.out.println(map.get(4)); //根据key查找
System.out.println(map.containsKey(1));
System.out.println(map.containsValue("二"));

强类型集合

<>中加入类型,前后要对应

Map<Tkey,Tvalue> map = new HashMap<Tkey,Tvalue>();

二、List 用索引号存储的,派生类是ArrayList和LinkedList。

添加:

add (obj)

删除:

clear()删除所有

remove(int)根据索引号移除

remove(obj)根据内容移除

获取:

size()获取元素的数量

get(int)根据索引号获取指定元素

contains(obj)查找集合里有没有该数据源,有返回trus,没有返回false

遍历:

1.List可以直接for循环使用索引号遍历集合

for (int i = 0; i < list.size(); i++) {

   System.out.println(list.get(i));

}

2.还可以使用迭代器来遍历

迭代器(Iterator)

  迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。

  Java中的Iterator功能比较简单,并且只能单向移动:

  (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。

  (2) 使用next()获得序列中的下一个元素。

  (3) 使用hasNext()检查序列中是否还有元素。

  (4) 使用remove()将迭代器新返回的元素删除。

  Iterator是Java迭代器最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两个方向遍历List,也可以从List中插入和删除元素。

  ArrayList <String> list=new ArrayList<>();
list.add("jackie"); //索引为0 //.add(e)添加元素
list.add("peter"); //索引为1
list.add("annie"); //索引为2
list.add("martin"); //索引为3
list.add("marry"); //索引为4 System.out.println("一共有"+list.size()+"个元素");//.size()查询一共有多少个元素
list.remove(3);      //.remove(index) 根据索引号删除
list.remove("marry"); //.remove(Object o) 根据内容删除
System.out.println(list.contains("martin")); //.contains(obj)查询集合中是否有这个元素 System.out.println("索引号为2的是:"+list.get(2)); //.get(index)根据索引号查找
System.out.println("一共有"+list.size()+"个元素");
//用for循环遍历
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i)); //for循环使用索引号遍历list
}
     //用迭代器遍历
    Iterator it = list.iterator(); //造一个迭代器
     while(it.hasNext()){ //.hasNext()检查序列中是否还有元素
      object obj = it.next(); //.next()获得序列中的下一个元素
      System.out.println(obj);
    }

强类型集合

<>中加入类型,前后要对应

List<T> list = new ArrayList<T>();

Java中常用集合操作的更多相关文章

  1. java中的集合操作类(未完待续)

    申明: 实习生的肤浅理解,如发现有错误之处.还望大牛们多多指点 废话 事实上我写java的后台操作,我每次都会遇到一条语句:List<XXXXX> list = new ArrayList ...

  2. java中常用Redis操作

     stringRedisTemplate.opsForValue().set("test", "100",60*10,TimeUnit.SECONDS);//向 ...

  3. Java中常用的操作PDF的类库

    iText iText是一个能够快速产生PDF文件的java类库.iText的java类对于那些要产生包含文本,表格,图形的只读文档是很有用的.它的类库尤其与java Servlet有很好的给合.使用 ...

  4. java中对集合操作的易错点01

    今天用for循环遍历集合,对集合中满足条件的元素进行remove操作报错:ConcurrentModificationException 所以,在遍历集合进行增.删操作时,要使用迭代器的方式 publ ...

  5. JAVA中的集合容器操作类

    目录 JAVA中的集合容器操作类 List集合 ArrayList的操作方法说明 LinkedList Stack Set Map Queue 总结 JAVA中的集合容器操作类 Java容器类库总共分 ...

  6. Java中的集合和常用类

    Java中的常用类: ▪ Object类 ▪ Math类 ▪ String类和StringBuffer类(字符串) ▪ 8种基本类型所对应的包装类 ▪ java.util包中的类——Date类 Obj ...

  7. java中常用的工具类(二)

    下面继续分享java中常用的一些工具类,希望给大家带来帮助! 1.FtpUtil           Java   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...

  8. Java中的集合概述

    Java中的集合类有两个重要的分支,分别是接口Collection(包括List,Set等)和接口Map. 由于HashSet的内部实现原理使用了HashMap,所以我们先来了解Map集合类. 1.H ...

  9. Java中Set集合是如何实现添加元素保证不重复的?

    Java中Set集合是如何实现添加元素保证不重复的? Set集合是一个无序的不可以重复的集合.今天来看一下为什么不可以重复. Set是一个接口,最常用的实现类就是HashSet,今天我们就拿HashS ...

随机推荐

  1. 对Castle Windsor的Resolve方法的解析时new对象的探讨

    依赖注入框架Castle Windsor从容器里解析一个实例时(也就是调用Resolve方法),是通过调用待解析对象的构造函数new一个对象并返回,那么问题是:它是调用哪个构造函数呢? 无参的构造函数 ...

  2. IE的F12开发人员工具不显示问题

    按下F12之后,开发人员工具在桌面上看不到,但是任务栏里有显示.将鼠标放在任务栏的开发人员工具上,出现一片透明的区域,选中之后却出不来.将鼠标移动到开发人员工具的缩略图上,右键-最大化,工具就全屏出现 ...

  3. Sublime配置python开发环境

    Package Control Package Control 是Sublime 里直接安装附加插件的包管理器.可以通过以下步骤手动安装: 1.点击Preferences > Browse Pa ...

  4. 在Ubuntu 16.10安装mysql workbench报未安装软件包 libpng12-0错误

    1.安装mysql workbench,提示未安装软件包 libpng12-0 下载了MySQL Workbench 6.3.8   在安装的时候报错: -1ubu1604-amd64.deb 提示: ...

  5. 结巴分词3--基于汉字成词能力的HMM模型识别未登录词

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 1 算法简介 在 结巴分词2--基于前缀词典及动态规划实现分词 博 ...

  6. C++的内存泄漏检测

    C++大量的手动分配.回收内存是存在风险的,也许一个函数中一小块内存泄漏被重复放大之后,最后掏空内存. 这里介绍一种在debug模式下测试内存泄漏的方法. 首先在文件的开头以确定的顺序写下这段代码: ...

  7. InstallShield 脚本语言学习笔记

    InstallShield脚本语言是类似C语言,利用InstallShield的向导或模板都可以生成基本的脚本程序框架,可以在此基础上按自己的意愿进行修改和添加.     一.基本语法规则      ...

  8. 在centos7上安装ClamAV杀毒,并杀毒(centos随机英文10字母)成功

    前言 上传文件的时候发现总是失败,查看top发现有个进程一直cpu占用80%以上,而且名称还是随机数.kill之后,一会儿又重新生成了.突然发现居然没有在服务端杀毒的经历.在此处补齐. 安装clama ...

  9. JavaScript基础知识总结(三)

    JavaScript语法 七.循环语句 1.while 语法: while (exp) { //statements; } 说明:while (变量<=结束值) { 需执行的代码 } 例子: / ...

  10. Java程序:从命令行接收多个数字,求和并输出结果

    一.设计思想:由于命令行接收的是字符串类型,因此应先将字符串类型转化为整型或其他字符型,然后利用for循环求和并输出结果 二.程序流程图: 三.源程序代码:   //王荣荣 2016/9/23     ...