一、set 无序、可重复

public static  void main(String[] args){
Set<String> set=new HashSet<String>();
String s1=new String("hello");
String s2=s1;
String s3=new String("world");
String s5=new String("world");
//Set集合中add方法自动去重
set.add(s1);
set.add(s2);
set.add(s3);
set.add(s5);
//输出set数组
System.out.println(set);
//第1种 for循环遍历
for(String str:set){
System.out.println("for循环遍历:"+str);
}
//第2中 Iterator迭代遍历 hasNext()检查序列中是否还有元素 ,next()获得序列中的下一个元素
for(Iterator iterator=set.iterator();iterator.hasNext();){
String str=(String)iterator.next();
System.out.println("Iterator迭代遍历:"+str);
} //第3种方法 通过split分离然后输出
String[] s4=set.toString().split(",");
for(int i=0;i<s4.length;i++){
System.out.print("split输出结果:"+s4[i].replace("[", "").replace("]", ""));
}
} 运行结果:
[hello, world]
for循环遍历:hello
for循环遍历:world
Iterator迭代遍历:hello
Iterator迭代遍历:world
split输出结果:hellosplit输出结果: world

二、list 有序、可重复

package com.liuqi.ceshi;

import java.util.ArrayList;
import java.util.List; public class ListTest { public static void main(String[] args) {
//list 有序 可重复
List<String> person=new ArrayList();
//add添加方法
person.add("zhangsan");
person.add("lisi");
person.add("lisi");
person.add("wangwu");
person.add("zhaoliu");
person.add("zhangsan");
System.out.println("输出集合中元素"+person);
//remove删除元素
person.remove(0);
System.out.println("remove删除元素"+person);
//通过下标获取具体值
String index0= person.get(0);
System.out.println("通过下标获取具体值:"+index0);
//for循环遍历
for(String str:person){
System.out.println(str);
}
//contains查看某个元素是否在此集合中
String personname="zhangsan";
if(person.contains(personname)){
System.out.println("zhangsan在list列表中");
}
//.set(index, element)
person.set(0, "liuqi");
System.out.println("将第一个下标值对应值改为liuqi:"+person);
//通过元素找下标
System.out.println(person.indexOf("liuqi"));
System.out.println(person.lastIndexOf("zhangsan")); List<String> animal=new ArrayList();
animal.add("dog");
// 比较两个对象是否相等用equals,比较hashcode用==
if(person.equals(animal)){
System.out.println("相同");
}else{
System.out.println("不相同");
}
//判断list是否为空
if(person.isEmpty()){
System.out.println("为空");
}else{
System.out.println("不为空");
}
//将集合转化为字符串
System.out.println("将集合转化为字符串"+person.toString());
//将集合转化为数组
System.out.println("将集合转化为数组"+person.toArray());
//去重复
for (int i = 0; i <person.size()-1; i++) {
for (int j = person.size()-1; j >i; j--) {
if (person.get(j).equals(person.get(i))) {
person.remove(j);
}
}
}
System.out.println("元素去重"+person); } } 运行结果:
输出集合中元素[zhangsan, lisi, lisi, wangwu, zhaoliu, zhangsan]
remove删除元素[lisi, lisi, wangwu, zhaoliu, zhangsan]
通过下标获取具体值:lisi
lisi
lisi
wangwu
zhaoliu
zhangsan
zhangsan在list列表中
将第一个下标值对应值改为liuqi:[liuqi, lisi, wangwu, zhaoliu, zhangsan]
0
4
不相同
不为空
将集合转化为字符串[liuqi, lisi, wangwu, zhaoliu, zhangsan]
将集合转化为数组[Ljava.lang.Object;@6b38dba
元素去重[liuqi, lisi, wangwu, zhaoliu, zhangsan]

三、map 映射key-value

package com.liuqi.ceshi;

import java.util.HashMap;
import java.util.Map; public class MapTest { public static void main(String[] args) {
Map<String,String> map=new HashMap<String,String>();
map.put("1", "zhangsan");
map.put("2", "zhangsan");
map.put("3", "lisi");
//Map.values()遍历所有values
for(String values:map.values()){
System.out.println(values);
}
//Map.entrySet遍历key和value
for (Map.Entry<String, String> entry : map.entrySet()){
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
} } } 运行结果:
lisi
zhangsan
zhangsan
key= 3 and value= lisi
key= 2 and value= zhangsan
key= 1 and value= zhangsan

集合set、map、list的更多相关文章

  1. Java常用的几种集合, Map集合,Set集合,List集合

    Java中  Object是所有类的根 Java集合常用的集合List集合.Set集合.Map集合 Map接口常用的一些方法 size() 获取集合中名值对的数量 put(key k, value v ...

  2. Java基础知识强化之集合框架笔记53:Map集合之Map集合的遍历 键值对对象找键和值

    1. Map集合的遍历(键值对对象找键和值) Map -- 夫妻对  思路:  A: 获取所有结婚证的集合  B: 遍历结婚证的集合,得到每一个结婚证  C: 根据结婚证获取丈夫和妻子 转换:  A: ...

  3. Java基础知识强化之集合框架笔记52:Map集合之Map集合的遍历 键找值

    1. Map集合的遍历  Map -- 夫妻对 思路:  A:把所有的丈夫给集中起来.  B:遍历丈夫的集合,获取得到每一个丈夫.  C:让丈夫去找自己的妻子.  转换:  A:获取所有的键  B:遍 ...

  4. Java基础知识强化之集合框架笔记51:Map集合之Map集合的功能概述与测试

    1. Map集合的功能概述 (1)添加功能 V put(K key,V value):添加元素.这个其实还有另一个功能?先不告诉你,等会讲 如果键是第一次存储,就直接存储元素,返回null 如果键不是 ...

  5. Java集合之Map和Set

    以前就知道Set和Map是java中的两种集合,Set代表集合元素无序.不可重复的集合:Map是代表一种由多个key-value对组成的集合.然后两个集合分别有增删改查的方法.然后就迷迷糊糊地用着.突 ...

  6. java学习笔记—集合之Map集合

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 12.0px Times } p.p2 { margin: 0.0p ...

  7. Java集合之Map

    Map架构: 如上图: (1)Map是映射接口,Map中存储的内容是键值对(key-value) (2)AbstractMap是继承于Map的抽象类,实现了Map中的大部分API. (3)Sorted ...

  8. Java集合之Map和Set源码分析

    以前就知道Set和Map是java中的两种集合,Set代表集合元素无序.不可重复的集合:Map是代表一种由多个key-value对组成的集合.然后两个集合分别有增删改查的方法.然后就迷迷糊糊地用着.突 ...

  9. 第51节:Java当中的集合框架Map

    简书作者:达叔小生 Java当中的集合框架Map 01 Map提供了三个集合视图: 键集 值集 键-值 映射集 public String getWeek(int num){ if(num<0 ...

  10. 集合框架-Map集合

    * Map集合和Collection集合的区别? * Map集合存储元素是成对出现的,Map集合的键是唯一的,值是可重复的.可以把这个理解为:夫妻对 * Collection集合存储元素是单独出现的, ...

随机推荐

  1. 安装及使用supervisor

    用途有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断.当进程中断的时候,希望能自动重新启动它.此时,我就需要使用到了Supervisor. 前言supervisor管理的进程 ...

  2. centos安装GD库失败

    Error: Package: php-gd-5.6.11-1.el6.remi.x86_64 (remi-php56) Requires: gd-last(x86-64) >= 2.1.1 E ...

  3. ES6读书笔记(三)

    前言 前段时间整理了ES6的读书笔记:<ES6读书笔记(一)>,<ES6读书笔记(二)>,现在为第三篇,本篇内容包括: 一.Promise 二.Iterator和for of循 ...

  4. Java-链表(单向链表、双向链表)

    Java-链表 1.什么是链表? 2.链表的特点是什么? 3.链表的实现原理? 4.如何自己写出一个链表? 1.什么是链表? 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过 ...

  5. Linux基础-5.利用vi编辑器创建和编辑正文文件

    1.vi编辑器简介 1)掌握vi编辑器的定义:vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界面,vi是效率很高的文本编辑器.尽管在Linux上也有很多图形界面 ...

  6. Spring MVC中如何解决POST请求中文乱码问题,GET的又如何处理呢

    在web.xml中配置过滤器 GET请求乱码解决: 在Tomcat中service.xml中

  7. docker入门——安装(CentOS)、镜像、容器

    Docker简介 什么是docker 官方解释: Docker is the company driving the container movement and the only container ...

  8. Nexus Repository3安装和maven,npm配置(Linux)

    Nexus Repository下载 根据操作系统选择指定版本,本文针对Linux安装,其他的安装过程可能有所差异. https://help.sonatype.com/repomanager3/do ...

  9. Linux入门第五天——shell脚本入门(下)基础语法之调试debug

    一.如何debug 1.通过sh命令的参数: sh [-nvx] scripts.sh 选项与参数: -n :不要执行 script,仅查询语法的问题: -v :再执行 sccript 前,先将 sc ...

  10. 20155216 实验一《Java开发环境的熟悉》实验报告

    实验内容 1.使用JDK编译.运行简单的Java程序. 2.使用idea 编辑.编译.运行.调试Java程序. 3.实现四则运算,并进行测试. 4.实现带有"()"的"+ ...