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 ...
 
随机推荐
- shell基础篇(九)函数
			
函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高.像其他编程语言一样,Shell 也支持函数.Shell 函数必须先定义后使用1. Shell 函数的定义格式如下: ...
 - 查看系统进程:ps
			
ps命令用于查看系统进程,常见用法如下: [root@localhost ~]$ ps aux # 查看所有的进程 [root@localhost ~]$ ps aux | grep nginx # ...
 - HTML 解析
			
xml,json都有大量的库来解析,我们如何解析html呢? TFHpple是一个小型的封装,可以用来解析html,它是对libxml的封装,语法是xpath.今天我看到一个直接用libxml来解析h ...
 - cache buffers chains以及热块解决方案
			
cache buffers chains以及热块解决方案 今天是2013-10-10,今天下午我调休了,中午饭过后从14点一直睡到16点,这种感觉真爽. 之前学习过关于buffer cache的ca ...
 - codevs 5967 [SDOI2017]相关分析
			
[题解] /* WA://50分 last:(r-l+1)<-- (r-mid) (r-l+1)<-- (mid-l+1) now:int mid=l+r>>1; tr[l ...
 - linux shell中FS、OFS、RS、ORS图解
			
在linux 中,总是会忘记FS\OFS\RS\ORS的使用 下面一张图非常明晰的显示
 - mysql表大小写问题
			
查看大小写区分 mysql> show variables like "%case%"; linux在mysql安装完后默认:区分表名的大小写,不区分列名的大小写 改变表名的 ...
 - 网络流SAP+gap+弧优化算法
			
poj1273 Drainage Ditches Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 54962 Accept ...
 - vue报错    vue-cli 引入 stylus 失败
			
1.1.1. vue-cli 引入 stylus 失败 先通过vue-cli的webpack模板建立文件夹: vue init webpack test-stylus 然后安装依赖 npm ins ...
 - CSU 1808 地铁 (Dijkstra)
			
Description Bobo 居住在大城市 ICPCCamp. ICPCCamp 有 n 个地铁站,用 1,2,-,n 编号. m 段双向的地铁线路连接 n 个地铁站,其中第 i 段地铁属于 ci ...