java--set,Collections,map
set
特点:
无序,
不允许重复
没有索引
Set<String> set = new HashSet<String>();
set.add("hello");
set.add("world");
set.add("java");
//遍历
//转数组
Object[] obj = set.toArray();
for(int i=0;i!=obj.length;i++)
{
System.out.println(obj[i]);
}
//迭代器
Iterator<String> it = set.iterator();
while(it.hasNext())
{
String s = it.next();
System.out.println(s);
}
Collections:
Collections 与Collection 的区别:
Collection是集合体系的最顶层,包含了集合体系的共性
Collecions是一个工具集,方法都是用于操作Collection
// static int binatySearch(List list, Object key) // 二分查找
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
int index = Collctions.binarySearch(list, 4);
// static void copy(List desk, List src): 源列表中数据覆盖到目标列表中
// 注意,目标列表的长度,至少等于源列表的长度
List<String> src = new ArrayList<String>();
src.add("hello");
src.add("world");
src.add("java");
src.add("hello");
List<String> desk = new ArrayList<String>();
desk.add("");
desk.add("");
desk.add("");
desk.add("");
Collections.copy(desk,src);
//static void fill(List list,Object obj): 使用指定对象填充列表所有元素
//static void reverse(List list): 反转
//static void shuffle(List list): 随机置换
//static void sort(List list):排序
map
map是具有key和value的集合<key,value>
// Map<String,String> map = new HashMap<String, String>();
// HashMap<String,String> map = new HashMap<String, String>();
// 注意,如果要对自定义类进行去重,需要重写hashCode() 与 equals() 方法
map.put("123456", "xiaoming");
map.put("123113", "xiaohong");
map.put("423115", "lihua");
// value remove(Object key); // map.remove("423115"); 删除对应的key value 返回被删除的 value
// void clear(); // map.clear() 清空所有对应关系
// boolearn containsKey(Object key) // 判断key是否存在
// boolearn containsValue(Object value) // 判断value是否存在
// boolearn isEmpty() // map.isEmpty();
// int size()
// Value get(Object key)
//Set(K) keySet() // 以Set形式返回所有的key
Set<String> keys = map.keySet();
for(String key:keys)
{
System.out.println(key);
}
//Collection() values()
Collection<String> values = map.values();
for(String value:values){
System.out.println(value);
}
//遍历map方式一
Set<String> keys = map.keySet();
for(String key,keys)
{
String value = map.getValue(key);
}
//Set<Map.Entry<K,V> entrySet()> //遍历map的方式二
Set<Map.Entry<String,String>> entrys = map.entrySet();
for(Map.Entry<String,String>> entry,entrys)
{
entry.getKey();
entry.getValue();
}
java--set,Collections,map的更多相关文章
- 类 java.util.Collections 提供了对Set、List、Map进行排序、填充、查找元素的辅助方法。
类 java.util.Collections 提供了对Set.List.Map进行排序.填充.查找元素的辅助方法. 1. void sort(List) //对List容器内的元素排序,排序的规 ...
- Java中Set Map List 的区别
java中set map list的区别: 都是集合接口 简要说明 set --其中的值不允许重复,无序的数据结构 list --其中的值允许重复,因为其为有序的数据结构 map--成对的数据结构 ...
- JAVA中关于Map的九大问题
通常来说,Map是一个由键值对组成的数据结构,且在集合中每个键是唯一的.下面就以K和V来代表键和值,来说明一下java中关于Map的九大问题. 0.将Map转换为List类型 在java中Map接口提 ...
- 【Java进阶】---map集合排序
map集合排序 这篇文章讲的不仅仅是map排序,比如把对象按某一属性排序,它都可以解决这些问题. 比如,有N个对象,每个对象有个属性就是成绩,成绩分:优秀,良好,合格.那我们如何按 ...
- (7)Java数据结构--集合map,set,list详解
MAP,SET,LIST,等JAVA中集合解析(了解) - clam_clam的专栏 - CSDN博---有颜色, http://blog.csdn.net/clam_clam/article/det ...
- 集合-强大的集合工具类:java.util.Collections中未包含的集合工具
任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.Guava沿着这些路线提供了更多的工具方法:适用于所有集合的静态方法.这是Guava最流行和成熟 ...
- 要点Java20 java.util.Collections
java.util.Collections 集合帮助类 演示样例程序(JUnit演示) 排序 @Test public void testSort() { List<Integer> de ...
- java.util.Collections.unmodifiableMap 示例
1. 概述 public static <K,V> Map<K,V> unmodifiableMap(Map<? extends K,? extends V> m) ...
- JAVA基础之Map接口
个人理解: 个人感觉Map接口以后会经常用到,可以很清晰地查找某个对象,要熟悉其四种遍历方法.特别注意其键值对的键不能是重复的,有想定义有序存取的话,可以使用LinkedHashMap集合.不过定义自 ...
- Java集合——Collections工具类
Java集合——Collections工具类 摘要:本文主要学习了Collections工具类的常用方法. 概述 Collections工具类主要用来操作集合类,比如List和Set. 常用操作 排序 ...
随机推荐
- 848. Shifting Letters
问题描述: 问题规约为:对每一个数组S,移动(shifts[0] + shitfs[1]+...+shitfs[i] )mod 26位 def shiftingLetters(self, S: str ...
- docker 安装 rabbitMQ服务器
1. 镜像拉取 拉取rabbitMQ镜像文件,后边要接上 management 表名是拉取带有web管理端的镜像,有web界面方便管理. 2.默认用户运行镜像 docker run -d -p 567 ...
- Mac遇到挖矿程序的应急方法
Mac遇到挖矿程序应急的方法 工作笔记: 1.起因:监控发现jsonrpc挖矿报警,询问当事人描述当时情况是安装了sketch软件. 网上可以定位到该IOC 运行后该IOC流量依然可以观测 ...
- Day_04 面向对象
概述 对于面向对象编程的支持,Go语言设计得非常简洁而优雅.因为,Go语言并没有沿袭传统 面向对象编程中的诸多概念,比如继承(不支持继承,尽管匿名字段的内存布局和行为类似继承,但它并不是继承). 虚函 ...
- 【UOJ388】配对树(dsu on tree+线段树)
传送门 题意: 给出一颗含有\(n\)个结点的无根树,之后给出一个长度为\(m\)的序列,每个元素在\([1,n]\)之间. 现在序列中每个长度为偶数的区间的完成时间定义为树上最小配对方法中每对匹配点 ...
- day45_9_4前端(2)css
一.css的三种css导入: 1.在标签中内部定义(不推荐). 2.在head中的style总定义样式. 3.使用link链接外部的css文件. <!DOCTYPE html> <h ...
- 【CSP-S 2019】D2T1 Emiya 家今天的饭
Description 传送门 Solution 算法1 32pts 爆搜,复杂度\(O((m+1)^n)\) 算法2 84pts 裸的dp,复杂度\(O(n^3m)\) 首先有一个显然的性质要知道: ...
- 日志检索实战 grep sed
日志检索实战 grep sed 参考 sed命令 使用 grep -5 'parttern' inputfile //打印匹配行的前后5行 grep -C 5 'parttern' inputfile ...
- k-means实战-RFM客户价值分群
数据挖掘的十大算法 基本概念 导入数据集到mysql数据库中 总共有940个独立消费数据 K-Means 算法 K-Means 算法是一个聚类算法.你可以这么理解,最终我想把物体划分成 K 类.假设每 ...
- 正睿暑期培训day4考试
链接 A 求出来到每座山的距离后,就可以计算出每只猫等待的时间与出发时间的关系. 如果出发时间为\(x\),求出来只猫的等待时间.这里用\(b_i\)表示第i只猫的等待时间.然后我们将这些时间排序.问 ...