《Java编程那点事儿》读书笔记(五)

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编程那点事儿》读书笔记(五),布布扣,bubuko.com

《Java编程那点事儿》读书笔记(五)

上一篇:javascript 调用电脑摄像头


下一篇:java中的正则表达式