《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.函数式编程 函数作为一等公民: 将函数作为参数传递给另外一个函数这是函数式编程的特性之一. 函数可以作为另外一个函数的返回值,也是函数式编程的重要特点. 无副作用: ...
随机推荐
- 【Merge K Sorted Lists】cpp
题目: Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexit ...
- PHP图形图像处理之初识GD库
d=====( ̄▽ ̄*)b 引语 php不仅仅局限于html的输出,还可以创建和操作各种各样的图像文件,如GIF.PNG.JPEG.WBMP.XBM等. php还可以将图像流直接显示在浏览器中. 要处 ...
- 浅谈GitHub
Git 是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub. Gith是一个基于 git 的社会化代码分享社区,所谓 social coding.你 ...
- bzoj 1800 暴力枚举
直接暴力枚举四个点,然后判断是否能组成矩形就行了 注意枚举的点的标号从小到大,保证不重复枚举 /**************************************************** ...
- 【BZOJ】【1028】【JSOI2007】麻将
暴力/模拟 $n\leq400$,嗯……这是一个很小的数据范围= = 判断一副牌是不是听牌并求出听什么牌太麻烦了,干脆我们直接判是不是胡牌好了~ 枚举胡的是哪张牌,然后判一下加上这张牌后是否能胡. 算 ...
- Dynamic Programming - Part2
实现如下: public static void main(String[] args) { String squence1 = "ABCBDAB"; String squence ...
- JS中的间歇(周期)调用setInterval()与超时(延迟)调用setTimeout()相关总结
超时调用需要使用window.setTimeout(code,millisec)方法 它接受两个参数:要执行的代码和以毫秒表示的时间(即在执行代码前需要等待多少毫秒).其中第一个参数可以是一个包含JS ...
- jQuery1.9.1--queue队列源码分析(非动画部分)
jQuery.extend({ // 显示或操作在匹配元素上执行的函数队列 queue: function (elem, type, data) { var queue; if (elem) { // ...
- Assetbundle的杂七杂八
使用Assetbundle时可能遇到的坑 一 24 十一郎未分类 No Comments 转自 http://www.unitymanual.com/blog-3571-132.html 1.Edit ...
- 数据分页 THINKPHP3.2 分页 三种分页方法
数据分页 复制本页链接 opensns 通常在数据查询后都会对数据集进行分页操作,ThinkPHP也提供了分页类来对数据分页提供支持. 下面是数据分页的两种示例. 第一种:利用Page类和limit方 ...