Java backup
待补充 ........
0:常用头文件(待补充)
import java.util.Arrays;
import java.util.HashSet;
import java.util.TreeSet;
import java.util.Map;
import java.util.HashMap; import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.io.IOException;
import java.util.StringTokenizer; import java.math.BigInteger; //大整数
import java.math.BigDecimal; //大浮点数
1:读入(from Petr)
class InputReader {
public BufferedReader reader;
public StringTokenizer tokenizer;
public InputReader(InputStream stream) {
reader = new BufferedReader(new InputStreamReader(stream), 32768);
tokenizer = null;
}
public String next() {
while (tokenizer == null || !tokenizer.hasMoreTokens()) {
try {
tokenizer = new StringTokenizer(reader.readLine());
} catch (IOException e) {
throw new RuntimeException(e);
}
}
return tokenizer.nextToken();
}
public int nextInt() {
return Integer.parseInt(next());
}
}
2:高精度的使用
3:Set 类的使用
介绍:Java中的Set有三种常用的实现方式:
(1)HashSet : HashSet将数据存储哈希表中,性能最佳。(无序)
(2)TreeSet: TreeSet将数据存储在红黑树中,数据的顺序依据数据的值。(有序)
(3)LinkedHashSet: LinkedHashSet中的数据存储在哈希表中,同时被链表贯穿着。它的顺序是按照插入的顺序。(有序)
使用:
(1)初始化、插入、删除、遍历
Set<Type> set = new HashSet<Type>(); //HashSet 初始化
Set<Type> set = new TreeSet<Type>(); //TreeSet 初始化 set.add(Type); //元素插入 set.remove(Type); //元素删除 set.contains(Type); //如果包含某个元素,则返回 true set.size(); //返回集合中的元素个数 set.clear(); //清空集合 set.isEmpty(); //如果集合为空,则返回 true //遍历方法一:迭代器遍历
for(Iterator<Type> iterator = set.iterator();iterator.hasNext();){
System.out.print(iterator.next() + " " );
} //遍历方法二:循环遍历
for(Type value : set){
System.out.print(value+" ");
}
(2)TreeSet 自定义比较方法
Set<Type> set = new TreeSet<Type>(new MyComparator()); //新的初始化方法 class MyComparator implements Comparator<Type>{ //自定义类
public int compare(Type a, Type b) {
return ; //自定义比较方法
}
}
介绍:HashMap通过hashcode对其内容进行快速查找,而 TreeMap中所有的元素都保持着某种固定的顺序。
如果你需要得到一个有序的结果你就应该使用TreeMap(HashMap中元素的排列顺序是不固定的)。
(1)初始化、插入、删除、遍历
Map<Type1, Type2> map = new HashMap<Type1, Type2>(); //初始化 map.put(Type1 , Type2); //插入 map.remove(Type1); //删除 map.clear(); //清空 map.get(Type1); //返回与Type1相关的Type2 map.containsKey(Type1); //如果包含指定键的映射,则返回 true map.containsValue(Type2); //如果将一个或多个键映射到指定值,则返 true,效率低 map.isEmpty(); //如果 Map 为空,则范围 true map.size(); //返回 Map 的映射数目 map.putAll(Map t); //将 t 中的所有映射复制过来 //遍历主方法一:在for-each循环中使用entries来遍历 for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
} //遍历主方法二:在for-each循环中遍历keys或values(效率稍高) for (Integer key : map.keySet()) { //仅需要键
System.out.println("Key = " + key);
} //遍历map中的值 for (Integer value : map.values()) { //仅需要值
System.out.println("Value = " + value);
}
Java backup的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- hadoop 2.5 hdfs namenode –format 出错Usage: java NameNode [-backup] |
在 cd /home/hadoop/hadoop-2.5.2/bin 下 执行的./hdfs namenode -format 报错[hadoop@node1 bin]$ ./hdfs nameno ...
- Java多线程系列--“JUC锁”03之 公平锁(一)
概要 本章对“公平锁”的获取锁机制进行介绍(本文的公平锁指的是互斥锁的公平锁),内容包括:基本概念ReentrantLock数据结构参考代码获取公平锁(基于JDK1.7.0_40)一. tryAcqu ...
- Java多线程系列--“JUC锁”04之 公平锁(二)
概要 前面一章,我们学习了“公平锁”获取锁的详细流程:这里,我们再来看看“公平锁”释放锁的过程.内容包括:参考代码释放公平锁(基于JDK1.7.0_40) “公平锁”的获取过程请参考“Java多线程系 ...
- Java并发基础框架AbstractQueuedSynchronizer初探(ReentrantLock的实现分析)
AbstractQueuedSynchronizer是实现Java并发类库的一个基础框架,Java中的各种锁(RenentrantLock, ReentrantReadWriteLock)以及同步工具 ...
- java.util.concurrent包详细分析--转
原文地址:http://blog.csdn.net/windsunmoon/article/details/36903901 概述 Java.util.concurrent 包含许多线程安全.测试良好 ...
- Java实现Mysql数据库自动备份
最近项目中有一个这样的需求,要求定时备份数据库.看了一些网上的资料,了解到主要思路是是使用java中的Runtime类的exec()方法,可以直接调用windows的cmd命令,参数就是Mysql的备 ...
- 从零开始学 Java - 利用 Nginx 负载均衡实现 Web 服务器更新不影响访问
还记得那些美妙的夜晚吗 你洗洗打算看一个小电影就睡了,这个时候突然想起来今天晚上是服务器更新的日子,你要在凌晨时分去把最新的代码更新到服务器,以保证明天大家一觉醒来打开网站,发现昨天的 Bug 都不见 ...
- Install and set JAVA home on MAC OS with commandline
最近需要在MAC上做一些测试,由于测试机没有安装Java,只能自己安装,由于不能通过图形化界面访问测试机,只能通过命令行的形式来安装JAVA. 1. Download the jre/jdk inst ...
随机推荐
- 处理unsigned相减错误(BIGINT UNSIGNED value is out of range)
mysql 当两个字段想减时,如果其中一个或两个字段的类型的unsigned无签名类型,如果想减的值小于0则会报错(BIGINT UNSIGNED value is out of range) 测试: ...
- JS-元素大小深入学习-offset、client、scroll等学习研究笔记
一些属性和方法,在dom中没有规定如何确定页面中元素大小的情况下诞生... 1.偏移量(offset dimension) 测试代码: <!DOCTYPE html> <html&g ...
- centos7上安装iptables
centos7上安装iptables的步骤 注意:CentOS7默认的防火墙不是iptables,而是firewalle. 安装iptable iptable-service #安装iptables ...
- c# Winform间的页面传值
Form2 public partial class Form2 : Form { public string str; public Form2() { InitializeComponent(); ...
- 【Android】Could not find XXX.apk!的解决方法
昨天在Eclipse中导入一个Android工程后点击运行时出现了Could not find XXX.apk!的错误信息,具体错误提示如下: 到网上搜了好多方法,挨个尝试,最后都没解决但是,重启 ...
- linux grep命令(linux在文件中搜索内容)
转自:https://www.cnblogs.com/end/archive/2012/02/21/2360965.html linux grep命令 1.作用Linux系统中grep命令是一种强大的 ...
- mysql max_allowed_packet参数值改大后,莫名被还原
mysql数据库用innodb引擎,mysql max_allowed_packet在my.cnf中值加大后,够一段时间,系统会莫名把这个参数的值改小. innodb_buffer_pool_size ...
- jsp实现文件下载的代码(转载)
Java代码 OutputStream out=response.getOutputStream(); byte by[]=new byte[500]; File fileLoad=new Fil ...
- pyhton 函数参数,递归函数,高阶函数(一点点笔记)
'''def test(x,y): print(x) print(y)test(2,y=3)def test(*args):#参数可以是不确定的多个数,接受N个位置参数,转换成元组形式 print(a ...
- nginx安装和测试 (已验证)
进入:/usr/local/nginx 目录注意:为了保证各插件之间的版本兼容和稳定,建议先通过以下版本进行测试验证. 一.下载版本 下载nginx: wget http://nginx.org/do ...