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. 常用操作 排序 ...
随机推荐
- redis分享
Redis介绍 ´Redis是一种基于键值对的NoSQL数据库. ´Redis基于内存来存放数据. ´速度快,官方给出读写性能可达到10万/秒(数据存内存,C语言实现,单线程架构). ´丰富的数据结构 ...
- Java面试题-基础篇二(干货)
11.是否可以从一个static方法内部发出对非static方法的调用? 不可以.因为非static方法是要与对象关联在一起的,必须创建一个对象后,才可以在该对象上进行方法调用,而static方法调用 ...
- xposed 原理分析
1.添加hook方法 首先是init进程打开 app_process,然后进入XposedInit.java main() - > initForZygote() 加入对ActivityThre ...
- 线上可用django和gunicorn的dockerfile内容
一,基础镜像 [xxx.com.cn/3rd_part/python.3.6.8:alpine3.9-mysqlclient1.4.2] FROM python:3.6.8-alpine3.7 MAI ...
- C++标准库删除字符串中指定字符,比如空格
参见:https://zh.cppreference.com/w/cpp/algorithm/remove 使用 erase 和 remove 配合. #include <algorithm&g ...
- 如何对jmeter设置IP欺骗
由于服务器出于安全考虑会对同一IP地址做过滤,所以如果想要达到正常的压测效果,我们需要在发请求时伪造出不同的IP地址.主要步骤分为以下3步:第一步:在负载机上绑定IP地址. 第二步:在要欺骗的http ...
- NLP_DataFun:
智能机器人在滴滴出行场景的技术探索 分享嘉宾:熊超 滴滴 AI Labs 编辑整理:Hoh Xil 内容来源:AI 科学前沿大会 出品社区:DataFun 注:欢迎转载,转载请注明出处 本次分享是在2 ...
- CF1146D Frog Jumping
CF1146D Frog Jumping 洛谷评测传送门 题目描述 A frog is initially at position 00 on the number line. The frog ha ...
- Open3D-PointNet2-Semantic3D-master的运行
1.修改download_semantic3d.sh文件 #!/bin/bash ans=`dpkg-query -W p7zip-full` if [ -z "$ans" ]; ...
- 开源规则引擎 drools
java语言开发的开源业务规则引擎 DROOLS(JBOSS RULES )具有一个易于访问企业策略.易于调整以及易于管理的开源业务规则引擎,符合业内标准,速度快.效率高.业务分析师或审核人员可以利用 ...