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和容器的更多相关文章

  1. 《实战Java高并发程序设计》读书笔记五

    第五章 并行模式与算法 1.单例模式 是一种对象创建模式,用于产生一个对象的具体实例,它可以确保系统一个类只产生一个实例. 对于频繁创建使用的对象可以省略new 操作花费的时间,可以减少系统开销. 由 ...

  2. 《Java并发编程的艺术》读书笔记:二、Java并发机制的底层实现原理

    二.Java并发机制底层实现原理 这里是我的<Java并发编程的艺术>读书笔记的第二篇,对前文有兴趣的朋友可以去这里看第一篇:一.并发编程的目的与挑战 有兴趣讨论的朋友可以给我留言! 1. ...

  3. 《深入了解java虚拟机》高效并发读书笔记——Java内存模型,线程,线程安全 与锁优化

    <深入了解java虚拟机>高效并发读书笔记--Java内存模型,线程,线程安全 与锁优化 本文主要参考<深入了解java虚拟机>高效并发章节 关于锁升级,偏向锁,轻量级锁参考& ...

  4. <<Java RESTful Web Service实战>> 读书笔记

    <<Java RESTful Web Service实战>> 读书笔记 第一章   JAX-RS2.0入门 REST (Representational State ransf ...

  5. 《Java并发编程的艺术》读书笔记:一、并发编程的目的与挑战

    发现自己有很多读书笔记了,但是一直都是自己闷头背,没有输出,突然想起还有博客圆这么个好平台给我留着位置,可不能荒废了. 此文读的书是<Jvava并发编程的艺术>,方腾飞等著,非常经典的一本 ...

  6. 《Effective Java中文版第二版》读书笔记

    说明 这里是阅读<Effective Java中文版第二版>的读书笔记,这里会记录一些个人感觉稍微有些重要的内容,方便以后查阅,可能会因为个人实力原因导致理解有误,若有发现欢迎指出.一些个 ...

  7. 《深入分析Java Web技术内幕》读书笔记之JVM内存管理

    今天看JVM的过程中收获颇丰,但一想到这些学习心得将来可能被遗忘,便一阵恐慌,自觉得以后要开始坚持做读书笔记了. 操作系统层面的内存管理 物理内存是一切内存管理的基础,Java中使用的内存和应用程序的 ...

  8. 《Java7并发编程实战手册》读书笔记

    一.线程管理 1.线程的创建和运行 创建线程的2种方式: 继承Thread类,并覆盖run()方法 创建一个实现Runnable接口的类.使用带参数的Thread构造器来创建Thread对象 每个Ja ...

  9. 《实战Java高并发程序设计》读书笔记六

    第六章 Java 8 与并发 1.函数式编程 函数作为一等公民: 将函数作为参数传递给另外一个函数这是函数式编程的特性之一. 函数可以作为另外一个函数的返回值,也是函数式编程的重要特点. 无副作用: ...

随机推荐

  1. 成为嵌入式程序员应知道的0x10个基本问题

    预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 2 ...

  2. eclipse部署Tomcat6 : The server does not support version 3.0 of the JEE Web module specification

    为项目添加tomcat 6,发现不能添加,原因如下 这是因为Tomcat6不能为JavaEE3.0版本服务,把项目的版本降低到2.5就可以了 现在可以部署了

  3. Leetcode#89 Gray Code

    原题地址 二进制码 -> 格雷码:从最右边起,依次与左边相邻位异或,最左边一位不变.例如: 二进制: 1 0 0 1 1 1 0 |\|\|\|\|\|\| 格雷码: 1 1 0 1 0 0 1 ...

  4. ios containerViewController

    - (void)replaceViewController:(UIViewController *)existingViewController withViewController:(UIViewC ...

  5. UIFontFamily

    Family: Hiragino Kaku Gothic ProN W3     Font: HiraKakuProN-W3 Family: Courier     Font: Courier     ...

  6. GameMap地图初始化

    init_map(res_path) .初始化mapbase的基本信息 pos2d screen_area = {, }; //普通屏幕大小 m_spBase->init(screen_area ...

  7. [工作记录] Android OpenGL ES 2.0: square texture not supported on some device

    npot texture: non-power-of-two texture.rectangle texture: non-square (height != wdith) 在测试Samsumg Ga ...

  8. AngularJs学习笔记--Forms

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/forms 控件(input.select.textarea)是用户输入数据的一种方式.Form(表单) ...

  9. 大话C#之属性

    前言 俗话说得好:工欲善其事,必先利其器.要想玩转OOP设计出一个优秀的类型,属性是必不可少的,那么我们今天就来说说c#中关于属性的二三事. 属性(property)分为无参属性(parameterl ...

  10. ubuntu安装后没有root密码

    新安装的ubuntu没有设置root密码,也就不能登录到root账户下.要想设置root密码需要在当前账户下输入sudo passwd,然后输入当前用户的密码,然后输入两次root的新密码,即可完成r ...