Java核心技術 卷I 手記(一)

一、相對JDK5.0比較

之前版本:

for(int i=0;i<g;i++){
   System.out.println(g[i]);
}
之後版本

for(string a:g){
   System.out.println(a);
}


JDK1.4及以後的版本中將強制main方法是public的。


長整形值有一個後綴L(如400000L)。十六進制數值有一個前綴0x(如0xCAFE),八進制有一個前綴0,例如010對應八進制中的8.

float類型有一個後綴F(例如,3.402F),沒有後綴F的浮點型數值(如3.402)默認爲double類型,當然也可以添加後綴D。


關鍵字final生命常量,表示這個變量只能被賦值一次,一旦賦值便不能更改。

例:final double EXF=2.54;


二、二元算術運算符

x+=4;等價於x=x+4;

在Math類中,要想計算一個數值的平方根,可以使用sqrt方法

例:double y=Math.sqrt(x);//x=4,print y=2
另Math中有pow方法,實現冪運算

double y=Math.pow(x,a); // x a的平方

強制類型轉換

        相對浮點型進行舍入計算

例:double x=9.997;

        int i=(int)Math.round(x); //i=10


檢測字符串是否相對,用equals和equalgnoreCase更爲嚴謹,equalgnoreCase是不區分大小寫。


大數值

Biglnteger c = a.add(b); // c=a+b
Biglnteger d = c.multiply(b.add(Binglnteger.valueof(2))); //d=c*(b+2)
//divide 是除

數值拷貝

System.arraycopy(from,fromlndex,to,toIndex,count);

例:
int[] s = {2.3.7.5.11.13};
int[] a = {1001,1002,1003,1004,1005,1006,1007};
System.arraycopy(s,2,a,3,4);
for(int i=0;i<a.length;i++){
   System.out.println(i+":"+a[i]);
}
輸出結果:0:1001

                 1:1002

                  2:1003

                  3:7

                  4:5

                   5:11

                   6:13


解釋:創建兩個數組,然後第一個數組的後4個元素拷貝到第二個數組中,拷貝從源數組第二個位置開始,一個4個元素,目標數組的起始位置爲3。


關於java.util包中得Math.rndom方法將返回一個0~1之間(含0,不含1)的隨機浮點數,若用n乘以這個浮點數,就可以得到從0~n-1之間的一個隨機數。

     例:int r = (int)(Math.rndom()*n);

快速排序法:

Arrays.sort(a);    //int [] a = new int[1000];


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章