java-map复合类型(HashMap-TreeMap)常用操作例子(适合初学者)
package com.net.xinfang.reflect; import java.util.ArrayList;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.TreeMap; /***
* map-HashMap/HashTable/TreeMap
*
* @author xinfang
*
*/
public class map006 {
public void map() {
Map<Integer, String> map = new HashMap<Integer, String>();
/***
* TreeMap的entrySet比keySet遍历效率高
*/
Map<String,String> treemap=new TreeMap<String,String>();
Map<String,String> ht=new Hashtable<String,String>();
ht.put(String.valueOf(1),String.valueOf(1));
for(int i=0;i<2;i++){
treemap.put(String.valueOf(i),String.valueOf(i));
}
Iterator<Entry<String,String>> tree=treemap.entrySet().iterator();
while(tree.hasNext()){
System.out.println(tree.next());
}
map.put(0, "0");// 添加key-value
map.put(1, "1");
//循环添加key-value
for(int i=2;i<10;i++){
Integer key=i;
String value=String.valueOf(i);
map.put(key, value);
}
// keyset遍历-泛型-Iterator接口
Iterator<Integer> it = map.keySet().iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
// entrykey遍历-泛型-Iterator接口
Iterator<Entry<Integer, String>> its = map.entrySet().iterator();
while (its.hasNext()) {
System.out.println(its.next().getValue());
}
// 第二种for-entry
for (Map.Entry<Integer, String> entry : map.entrySet()) {
System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
}
// 遍历map中的键
for (Integer key : map.keySet()) {
System.out.println("Key = " + key);
}
// 遍历map中的值
for (String value : map.values()) {
System.out.println("Value = " + value);
}
System.out.println(map.get(1));// 获取键值为1的值
System.out.println(map.size());// 获取map大小
System.out.println(map.equals(1));// 判断对象的内容是否相同
System.out.println(map.hashCode());// 获取hashcode
System.out.println(map.isEmpty());// 空-true,非空-false
System.out.println(map.remove(1));// 移除键值为1的值
System.out.println(map.values());// 获取值
System.out.println(map.getClass());// 获取类名
System.out.println(map.replace(0, "2"));// 替换键值为0的值为2
System.out.println(map.toString());// 转换为字符串
// map转换为List
List<Integer> keyList = new ArrayList(map.keySet());
List<String> valueList = new ArrayList(map.values());
List<Entry> entryList = new ArrayList(map.entrySet());
// for遍历输出
for (Integer key : keyList) {
System.out.println(key);
}
for (String value : valueList) {
System.out.println(value);
}
for (Entry entry : entryList) {
System.out.println(entry);
}
}
public void searchList(String name) {
LinkedList<String> list = new LinkedList<String>();// 链表对象
list.add("1");// 添加元素
list.add("2");
list.add("3");
list.push(name);// 入栈
list.pop();// 出栈
for (int i = 0; i < list.size(); i++) {
if (name.equals(list.get(i))) {
System.out.println("您要查询的信息存在!" + list.getFirst() + list.getLast());
}
}
if (list.contains(name)) {
System.out.println("您要查询的信息存在!");
}
}
public static void main(String args[]) {
map006 m6 = new map006();
m6.map();
m6.searchList("2");
}
}
java-map复合类型(HashMap-TreeMap)常用操作例子(适合初学者)的更多相关文章
- 走进Java Map家族 (1) - HashMap实现原理分析
在Java世界里,有一个古老而神秘的家族——Map.从底层架构到上层应用,他们活跃于世界的每一个角落.但是,每次出现时,他们都戴着一张冷硬的面具(接口),深深隐藏着自己的内心.所有人都认识他们,却并非 ...
- Java实例 Part4:数组及其常用操作
目录 Part4:数组及其常用操作 Example01:将二维数组的行列交换 Example02:使用选择排序法对数组进行排序 Example03:使用冒泡排序法对数组进行排序 Example04:使 ...
- Java知识回顾 (16)常用操作的Java示例
环境设置 Java 实例 – 如何编译一个Java 文件? Java 实例 – Java 如何运行一个编译过的类文件? Java 实例 - 如何执行指定class文件目录(classpath)? Ja ...
- JAVA-集合类型List(ArrayList、LinkedList)常用操作例子(基础必备)
package com.net.xinfang.reflect; import java.util.ArrayList; import java.util.Arrays; import java.ut ...
- python笔记2-数据类型:字符串常用操作
这次主要介绍字符串常用操作方法及例子 1.python字符串 在python中声明一个字符串,通常有三种方法:在它的两边加上单引号.双引号或者三引号,如下: name = 'hello' name1 ...
- Java中对List集合的常用操作
目录: list中添加,获取,删除元素: list中是否包含某个元素: list中根据索引将元素数值改变(替换): list中查看(判断)元素的索引: 根据元素索引位置进行的判断: 利用list中索引 ...
- Java中对List集合的常用操作(转)
list中添加,获取,删除元素: list中是否包含某个元素: list中根据索引将元素数值改变(替换): list中查看(判断)元素的索引: 根据元素索引位置进行的判断: 利用list中索引位置重新 ...
- Java中对List集合的常用操作(转载)
目录: list中添加,获取,删除元素: list中是否包含某个元素: list中根据索引将元素数值改变(替换): list中查看(判断)元素的索引: 根据元素索引位置进行的判断: 利用list中索引 ...
- Java 字符串(二)字符串常用操作
一.连接字符串 1.连接多个字符串 使用“+”运算符可以实现连接多个字符串的功能.“+” 运算符可以连接多个运算符并产生一个 String 对象. 2.连接其他数据类型 字符串与其他基本数据类型进行连 ...
随机推荐
- Basic remains POJ - 2305 同余模 高精度处理
题意 给出B(10以内大于0)进制下 p (1000位以内)和m(9位以内) 求 p%m 在b进制下等于什么 思路: 可以计算 1e9不会溢出Int所以m在int值以内 先求m 要处理p 每 ...
- Android Studio导入jar包
使用开源框架是,可以直接复制源代码到自己的项目(本人在Android Studio中操作报R程序包不存在),也可以使用jar包,下面记录一下今天使用SmartImageView.jar的过程,不记录S ...
- 基于网络编程 TCP协议 及 socket 基本语法
socket是什么 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面, ...
- Android性能优化案例研究
译 者前言: 这是Google的Android开发工程师Romain Guy刊登在个人Blog上的一篇文章.Romain Guy 作为Android图形渲染和系统优化的专家,是Android 4.1中 ...
- WCF 改成 restful api
1. 右健 svc , view markup, 添加 Factory="System.ServiceModel.Activation.WebServiceHostFactory" ...
- W10笔记本电脑弄成WIFI
用网线连接的笔记本弄成WIFI供手机上网.以前是买了一个随身 WIFI,可以当网卡使用.后来使用命令 // 建立WIFI netsh wlan set hostednetwork mode=allow ...
- 「JLOI2015」骗我呢 解题报告?
「JLOI2015」骗我呢 这什么神仙题 \[\color{purple}{Link}\] 可以学到的东西 对越过直线的东西翻折进行容斥 之类的..吧? Code: #include <cstd ...
- 工作笔记:/bin/bash^M: 坏的解释器: 没有那个文件或目录 问题解决
问题原因: 由于windows上换行符为CR LF而在Linux下是 LF 导致出现上述问题 解决方案 1. 在windows下 可以使用nodepad打开该shell文件,然后将shell文件中的格 ...
- Spring 官方教程:使用 Restdocs 创建 API 文档
https://mp.weixin.qq.com/s?__biz=MzU0MDEwMjgwNA==&mid=2247483998&idx=1&sn=6ae5fa795d36b1 ...
- 【洛谷P2709】小B的询问
题目大意:给定一个长度为 N 的序列,M 个询问,静态查询区间 [l,r] 内的不同颜色数的平方和. 题解:直接莫队即可. 代码如下 #include <bits/stdc++.h> #d ...