一、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. 网页静态化解决方案-Freemarker

    1.1    技术简介与使用 1.1.1     简介 为什么使用: 1.  减轻数据库的访问压力,静态化比较适合大规模且相对变化不太频繁的数据: 2.  有利于SEO(搜索引擎优化); 纯的HTML ...

  2. js获取dom元素的子元素,父元素,兄弟元素小记

    原生jsvar a = document.getElementById("dom"); del_space(a); //清理空格 var b = a.childNodes; //获 ...

  3. 关于JQuery的异步注册

    在采用JQuery进行表单异步提交时,前台传入的是json数据格式,后台controller用map接收,再传回前台进行结果判断时,if-else接收结果()里面,尽量不要出现“=”,不然判断语句失效 ...

  4. kbmMW功能 - kbmMWProcess单元(转帖)

    此贴为转发红鱼儿的文章,原贴地址: https://www.cnblogs.com/kinglandsoft/p/kbmmw-features-5-kbmmwprocess-unit.html 在新的 ...

  5. Selenium_python自动化跨浏览器执行测试(简单多线程案例)

    发生背景: 跨浏览器测试是功能测试的一个分支,用以验证web应用在不同浏览器上的正常工作,通常情况下,我们都期望web类应用能够被我们的用户在任何浏览器上使用,例如有的人喜欢IE浏览器上使用,有的人喜 ...

  6. C语言之数组和函数

    数组 一维数组 定义:类型符 数组名 [常量表达式]  int a[]={1,2,3,4,5,}; #include<stdio.h> #define NUM 6 void main() ...

  7. Git 创建并管理局域网仓库

    Git 作为当前比较流行的代码管理工具,可以实现多人协作,不同版本代码管理. 本文内容基于Ubuntu. 0. 配置git信息 git config --global user.name XXX # ...

  8. 20155234 实验三 敏捷开发与XP实践

    20155234 实验三 敏捷开发与XP实践 实验内容 1.XP基础 2.XP核心实践 3.相关工具 实验步骤 (一)敏捷开发与XP 敏捷开发(Agile Development)是一种以人为核心.迭 ...

  9. 20155319 2017-2018-1《信息安全系统设计》第四周课堂测试、Makefile、myod

    20155319 2017-2018-1<信息安全系统设计>第四周课堂测试.Makefile.myod 测试2-gcc测试 1.用gcc 进行预处理,编译,汇编,链接vi输入的代码 2.生 ...

  10. 【bzoj3991】[SDOI2015]寻宝游戏 树链的并+STL-set

    题目描述 给出一棵树,初始每个点都是非必经的.多次改变某个点的必经状态,并询问从任意一个点出发,经过所有必经的点并回到该点的最小路程. 输入 第一行,两个整数N.M,其中M为宝物的变动次数. 接下来的 ...