《Java编程那点事儿》读书笔记(五)——System,Integer,Calendar,Random和容器
System
1)arraycopy
int[] a = {1.2.3.4};
int[] b = new int[5];
System.arraycopy(a,1,b,3,2);
//把数组a中从下标1开始的元素复制到数组b中下标为3的位置,总共复制2个元素
2)currentTimeMillis
long l = System.currentTimeMillis();
//返回当前时间与1970年01月01日0时0分0秒的差值数(毫秒)
3)gc:请求系统进行垃圾回收
4)public static String getProperty(String key):获得属性名key的属性对应的值,key可以取java.version,os.name,user.name,user.dir等等。
Integer类
1)和int的转换(java1.5及以上版本)
int m = 12; Integer in = m; //int转integer
int n = in;//integer转int
2)parseInt:将数值字符串转化为int数值
String s = "123";
int n = Integer.parseInt(s);
int m = Integer.parseInt(s,16); //将s按照16进制转换为int,例如s为“ff”,则得到255
3)toString:int转化为制定进制的字符串
public static int parseInt(String s,int radix)
Caledar类(java.util)
1)创建calendar类存放当前时间
Calendar c = Calendar.getInstance();
2)使用Calendar类代表指定时间
public final void set(int year,int month,int date) //月份为实际月份减1
Calendar c = Calendar.getInstance();
c.set(2009,3-1,9);
3)public void set(int field,int value)——只设定某个字段的值,feild可以取值Calendar.YEAR,Calendar.DAY_OF_WEEK等。
4)public int get(int feild)——获得Calendar对象中对应的信息。
5)public abstract void add(int feild, int amount)
将日期增加100天
c.add(Calendar.DATE, 100);
6)public boolean after(Object when):判断当前日期是否在when后面,在就返回true,否则返回false
public static void main(String[] args) {
// TODO Auto-generated method stub
Calendar c = Calendar.getInstance();
c.set(2009, 3-1,9);
Calendar c1 = Calendar.getInstance();
c1.set(2009, 5-1,9);
long t1 = c1.getTimeInMillis();
long t2 = c.getTimeInMillis();
long days = (t1-t2)/(24*60*60*1000);
System.out.println(days);
}
Random类(java.util)
1)public Random(long seed)
Random r = new Random(10);
2)public boolean nextBoolean() //50%的概率生成true或者false
3)public int nextInt() //生成-231~231-1之间的数
public int nextInt(int n) //生成[0,n)之间的数
4)public double nextDouble() //生成[0,1.0)之间的小数
List系列
常用的有ArrayList 和 LinkedList
List list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.add("1");
list.add("1");
list.add(1,"12"); //在索引为1的地方插入12,后面的元素往后移动
list.set(2, "a"); //索引值为2的元素设置为a
list.remove("1"); //删除列表中的第一个1
list.remove(1); //删除索引值为1的元素
Set系列:不允许重复
Set set = new HashSet();
set.add("1");
set.add("2");
set.add("3");
set.add("1");
set.add("1");
set.remove("1");//删除集合里面的1,集合里面就没有1了
Iterator iterator = set.iterator();
while(iterator.hasNext()){
System.out.println((String)iterator.next());
}
上述代码输出3,2
Map系列(以HashMap为例)
HashMap<String,Double> map = new HashMap<String,Double>(); //注意这里不能用double
map.put("Apple", 0.5);
map.put("orange", 2.0);
map.put("banana",3.0);
//删除key为orange的键值对
map.remove("orange");
//修改Apple对应的值
map.put("Apple", 1.2);
Set set = map.keySet();
Iterator iterator = set.iterator();
while(iterator.hasNext()){
String key = (String)iterator.next();
double value = (Double)map.get(key);
System.out.println(key + "\t" + value);
}
《Java编程那点事儿》读书笔记(五)——System,Integer,Calendar,Random和容器的更多相关文章
- 《实战Java高并发程序设计》读书笔记五
第五章 并行模式与算法 1.单例模式 是一种对象创建模式,用于产生一个对象的具体实例,它可以确保系统一个类只产生一个实例. 对于频繁创建使用的对象可以省略new 操作花费的时间,可以减少系统开销. 由 ...
- 《Java并发编程的艺术》读书笔记:二、Java并发机制的底层实现原理
二.Java并发机制底层实现原理 这里是我的<Java并发编程的艺术>读书笔记的第二篇,对前文有兴趣的朋友可以去这里看第一篇:一.并发编程的目的与挑战 有兴趣讨论的朋友可以给我留言! 1. ...
- 《深入了解java虚拟机》高效并发读书笔记——Java内存模型,线程,线程安全 与锁优化
<深入了解java虚拟机>高效并发读书笔记--Java内存模型,线程,线程安全 与锁优化 本文主要参考<深入了解java虚拟机>高效并发章节 关于锁升级,偏向锁,轻量级锁参考& ...
- <<Java RESTful Web Service实战>> 读书笔记
<<Java RESTful Web Service实战>> 读书笔记 第一章 JAX-RS2.0入门 REST (Representational State ransf ...
- 《Java并发编程的艺术》读书笔记:一、并发编程的目的与挑战
发现自己有很多读书笔记了,但是一直都是自己闷头背,没有输出,突然想起还有博客圆这么个好平台给我留着位置,可不能荒废了. 此文读的书是<Jvava并发编程的艺术>,方腾飞等著,非常经典的一本 ...
- 《Effective Java中文版第二版》读书笔记
说明 这里是阅读<Effective Java中文版第二版>的读书笔记,这里会记录一些个人感觉稍微有些重要的内容,方便以后查阅,可能会因为个人实力原因导致理解有误,若有发现欢迎指出.一些个 ...
- 《深入分析Java Web技术内幕》读书笔记之JVM内存管理
今天看JVM的过程中收获颇丰,但一想到这些学习心得将来可能被遗忘,便一阵恐慌,自觉得以后要开始坚持做读书笔记了. 操作系统层面的内存管理 物理内存是一切内存管理的基础,Java中使用的内存和应用程序的 ...
- 《Java7并发编程实战手册》读书笔记
一.线程管理 1.线程的创建和运行 创建线程的2种方式: 继承Thread类,并覆盖run()方法 创建一个实现Runnable接口的类.使用带参数的Thread构造器来创建Thread对象 每个Ja ...
- 《实战Java高并发程序设计》读书笔记六
第六章 Java 8 与并发 1.函数式编程 函数作为一等公民: 将函数作为参数传递给另外一个函数这是函数式编程的特性之一. 函数可以作为另外一个函数的返回值,也是函数式编程的重要特点. 无副作用: ...
随机推荐
- ThinkDev.Logging-Queue模块介绍
Queue,ThinkDev.Logging对内存级队列的封装. 主要针对需要简单进程内内存级队列提供支持,应用无需关心存储及线程. 配置例子: <!-- 队列对象 --> <Que ...
- 从URL中获取搜索关键字
public string GetSearchKeyWords(string strQuery) { string result = ""; string pattern = &q ...
- 剑指offer--13题
#include "stdafx.h" #include <iostream> using namespace std; void FirstNoRepeatCh(co ...
- [noip2010]关押罪犯 并查集
第一次看的时候想到了并查集,但是不知道怎么实现: 标解,f[i]表示i所属的集合,用f[i+n]表示i所属集合的补集,实现的很巧妙,可以当成一个使用并查集的巧妙应用: #include<iost ...
- HDU 1028Ignatius and the Princess III(母函数简单题)
Ignatius and the Princess III Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d ...
- HOWTO: Create native-looking iPhone/iPad applications from HTML, CSS and JavaScript
HOWTO: Create native-looking iPhone/iPad applications from HTML, CSS and JavaScript Though it's not ...
- ssh 远程 centos 乱码
今天,帮我们同学处理一下中文显示乱码的问题.这个是个国内Linux用户烦恼的问题,由于大部分的Linux发行版都是以英语为主体的,而且英文在通用性和稳定性上都比中文要好一些,各种奇怪的BUG也要少一点 ...
- 【六】PHP正则表达式方法
PHP中正则表达式的声明格式有两种方式,一种是POSIX老版模式,已经不常用.还有一种是其他语言中常见的PCRE方法. 1.正则表达式的匹配方法并返回匹配的项:array preg_grep(stri ...
- delphi一些小技巧 从别处看到
开发环境-------- Delphi 7是一个很经典的版本,在Win2000/XP下推荐安装Delphi 7来开发软件,在Vista下推荐使用Delphi 2007开发软件.安装好Delphi ...
- iOS16进制设置颜色
UIColor+Hex.h // // UIColor+Hex.h // 16进制颜色类别 // // Created by apple on 15-4-3. // Copyright (c) 201 ...