java集合测试类等
package demo.mytest;
import java.lang.ref.SoftReference;
import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Queue;
import java.util.Set;
import java.util.TreeMap;
import java.util.Map.Entry;
/**
* 在很多情况下,主线程生成并起动了子线程,如果子线程里要进行大量的耗时的运算,
* 主线程往往将于子线程之前结束,但是如果主线程处理完其他的事务后,需要用到子线程的处理结果,
* 也就是主线程需要等待子线程执行完成之后再结束,这个时候就要用到join()方法了。
* @author Administrator
*
*/
public class TestDemo {
public static void main(String[] args) {
// String threadName = Thread.currentThread().getName();
// System.out.println(threadName + " start.");
// BThread bt = new BThread();
// AThread at = new AThread(bt);
// try {
// bt.start();
// Thread.sleep(2000);
// at.start();
// at.join();
// } catch (Exception e) {
// System.out.println("Exception from main");
// }
// System.out.println(threadName + " end!");
// Queue<String> queue = new LinkedList<String>();
// queue.offer("Hello");
// queue.offer("World!");
// queue.offer("好吧!");
// queue.offer("你好!");
// System.out.println(queue.size());
// String str;
// while((str=queue.poll())!=null){
// System.out.print(str);
// }
// System.out.println();
// System.out.println(queue.size());
// System.out.println("*************************LinkedHashMap*************");
// Map<Integer,String> map = new LinkedHashMap<Integer,String>();
// map.put(6, "apple");
// map.put(7, "banana");
// map.put(2,"pear");
//
// for (Iterator it = map.keySet().iterator();it.hasNext();)
// {
// Object key = it.next();
// System.out.println( key+"="+ map.get(key));
// }
// System.out.println("*************************HashMap*************");
// Map<Integer,String> map1 = new HashMap<Integer,String>();
// map1.put(6, "apple");
// map1.put(7, "banana");
// map1.put(2,"pear");
//
// for (Iterator it = map1.keySet().iterator();it.hasNext();)
// {
// Object key = it.next();
// System.out.println( key+"="+ map1.get(key));
// }
//HashMap
// System.out.println("------HashMap无序输出------");
// HashMap hsMap=new HashMap();
// hsMap.put("3", "Value3");
// hsMap.put("1", "Value1");
// hsMap.put("2", "Value2");
// hsMap.put("b", "ValueB");
// hsMap.put("a", "ValueA");
// Iterator it = hsMap.entrySet().iterator();
// while (it.hasNext()) {
// Map.Entry e = (Map.Entry) it.next();
// System.out.println("Key: " + e.getKey() + "--Value: "
// + e.getValue());
// }
//
// //TreeMap
// System.out.println("------TreeMap按Key排序输出------");
// TreeMap teMap=new TreeMap();
// teMap.put("3", "Value3");
// teMap.put("1", "Value1");
// teMap.put("2", "Value2");
// teMap.put("b", "ValueB");
// teMap.put("a", "ValueA");
// Iterator tit = teMap.entrySet().iterator();
// while (tit.hasNext()) {
// Map.Entry e = (Map.Entry) tit.next();
// System.out.println("Key: " + e.getKey() + "--Value: "
// + e.getValue());
// }
//
// //LinkedHashMap
// System.out.println("--LinkedHashMap根据输入的顺序输出--");
// LinkedHashMap lhsMap=new LinkedHashMap();
// lhsMap.put("3", "Value3");
// lhsMap.put("1", "Value1");
// lhsMap.put("2", "Value2");
// lhsMap.put("b", "ValueB");
// lhsMap.put("a", "ValueA");
// Iterator lit = lhsMap.entrySet().iterator();
// while (lit.hasNext()) {
// Map.Entry e = (Map.Entry) lit.next();
// System.out.println("Key: " + e.getKey() + "--Value: "
// + e.getValue());
// }
// List<String> listWithDup = new ArrayList<String>();
// listWithDup.add("1");
// listWithDup.add("2");
// listWithDup.add("3");
// listWithDup.add("1");
//
// List<String> listWithoutDup = new ArrayList<String>(new HashSet<String>(listWithDup));
// List<String> lists=new ArrayList<String>(new HashSet<String>(listWithDup));
// System.out.println("list with dup:"+ listWithDup);
// System.out.println("list without dup:"+ listWithoutDup);
// List list=new ArrayList();
// list.add("1");
// list.add("2");
// list.add("a");
// list.add("b");
// list.add("2");
// list.add("b");
// List list1= removeDuplicate(list);
// for(int i=0;i<list1.size();i++){
// System.out.println(list1.get(i));
// }
//弱引用.
// SoftReference<String> sr=new SoftReference<String>(new String("hello"));
// System.out.println("sr:"+sr.get());
// System.gc();
// System.out.println("sr2:"+sr.get());
//软引用
// WeakReference<String> wr=new WeakReference<String>(new String("hello"));
// System.out.println("wr:"+wr.get());
// System.gc();
// System.out.println("wr2:"+wr.get());
//Properties pps = System.getProperties();
//pps.list(System.out);
//String s="412723199902072119";//41**********2119
String s="130503670401001";
String s1=s.substring(2, s.length()-4);
StringBuffer sb=new StringBuffer(s.substring(0, 2));
for(int i=2;i<s.length()-4;i++){
sb.append("*");
}
sb.append(s.substring(s.length()-4));
System.out.println("s:"+s+",s1:"+s1+",sb:"+sb+",s:"+s.length());
// String s1=s.substring(2,s.length()-4);
// String s2=s.replace(s1,"************");
// System.out.println("s2:"+s2+",length:"+s2.length());
}
private static List removeDuplicate(List list) {
Set set = new HashSet();
List newList = new ArrayList();
for(Iterator iter = list.iterator();iter.hasNext();) {
Object element = iter.next();
if(set.add(element)) {
newList.add(element);
}
}
return newList;
}
}
java集合测试类等的更多相关文章
- Java集合---Array类源码解析
Java集合---Array类源码解析 ---转自:牛奶.不加糖 一.Arrays.sort()数组排序 Java Arrays中提供了对所有类型的排序.其中主要分为Prim ...
- 7.Java集合-Arrays类实现原理及源码分析
Java集合---Arrays类源码解析 转自:http://www.cnblogs.com/ITtangtang/p/3948765.html 一.Arrays.sort()数组排序 Java A ...
- Java集合框架类
java集合框架类图 Collection接口(List.Set.Queue.Stack):
- 如何在Java中测试类是否是线程安全的
通过优锐课的java核心笔记中,我们可以看到关于如何在java中测试类是否线程安全的一些知识点汇总,分享给大家学习参考. 线程安全性测试与典型的单线程测试不同.为了测试一个方法是否是线程安全的,我们需 ...
- Java集合框架类图
Java集合框架的类图 http://blog.toruneko.net/28
- Java集合Stream类filter的使用
之前的Java集合中removeIf的使用一文写了使用removeIf来实现按条件对集合进行过滤.这篇文章使用同样是JDK1.8新加入的Stream中filter方法来实现同样的效果.并且在实际项目中 ...
- Java:集合工具类-Collections
Java.util.Collections 集合框架工具类Collections,其方法都是静态的,本身没有构造函数. 常见方法: static <T extends Comparable< ...
- Java集合---Arrays类源码解析
一.Arrays.sort()数组排序 Java Arrays中提供了对所有类型的排序.其中主要分为Primitive(8种基本类型)和Object两大类. 基本类型:采用调优的快速排序: 对象类型: ...
- Java—集合工具类
集合中的元素工具类排序: Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类提供了大量方法对集合进行排序.查询和修改等操作,还提供了将集合对象置为不可变.对 ...
随机推荐
- 自定义Mybatis返回类型及注意事项
一.自定义返回拦截器package com.yaoex.crm.service.util; import org.apache.ibatis.session.ResultContext;import ...
- ios 微信登录相关
引入项目的文件 info.plist 添加内容 WXApi.registerApp(Config.wx.APP_ID,enableMTA: true)//注册微信api(在AppDelegate里面注 ...
- Linux | C代码的编写、运行和调试
1. 建立.c文件 在终端下输入:vi mytest.c [使用编辑器 vim] 键入键盘i键,使vi编辑器进入编辑模式 接下来在vi编译器中编写代码,如: #include <stdio.h ...
- 在开发中经常会有多级跳转 viewcontroller的问题,然后有时不一定要一级一级的返回,可能直接返回到某个根视图控制器或某个指定的控制器.
其中采用navigationController pushViewController 的方法,比如我从主页面跳转到了4级页面,又从4级页面跳转到了2级页面,然后从2级页面跳转到了4级页面然后在重4级 ...
- [题解]luogu_AT1224_JOIOJI
https://www.cnblogs.com/fengzhiyuan/p/7588443.html 不会map,有点菜 1.要想知道三个字母出现次数相等, 为J [ i ]-J [ j ]== O[ ...
- Tinghua Data Mining
Learning Resources 书籍: 期刊: 业界先驱: 开阔视野,掌握业界最新动态. 工具: 数据挖掘是很多学科的综合体: 甭管叫什么名字,归根到底都是数据挖掘: Comprehensive ...
- HDU6299(2018多校第一场)
Bryce1010模板 http://acm.hdu.edu.cn/showproblem.php?pid=6299 两个字符串的排序可以分成四种情况: (1)str1左少右多 vs str2 左多右 ...
- springMVC-上传图片
SpringMVC文件上传与下载 上传图片 配置多媒体文件解析器 配置虚拟目录 在tomcat上配置图片虚拟目录,在tomcat下conf/server.xml中添加: <Context doc ...
- 简单了解junit的使用
普通使用: 在没有用测试框架之前,我们要用一个main方法来跑代码,而有了像junit这样的测试框架后,就可以不用次次写个main方法了. 直接上代码,注释里有说明: package com.stuP ...
- KEIL_RTX资源介绍
调度方法:时间片轮转. 参考文档:Keil参考手册和rtl.h(任务的每个.c文件都应包含此头文件)头文件这两个文档 1)事件管理:让一个进程等待一个事件,这个事件可以由其它进程和中断触发(只能在中断 ...