黑馬程序員---常用API


                                                       關於Java中的:常用API
                 --------- android培訓java培訓、java學習型技術博客、期待與您交流! ------------

API(Application Programming Interface,應用程序編程接口)是一些預先定義的函數,目的是提供應用程序與開發人員基於某軟件或硬件的以訪問一組例程的能力,而又無需訪問源碼,或理解內部工作機制的細節。

API--- java.lang.System: 屬性和行爲都是靜態的。

long currentTimeMillis(); // 返回當前時間毫秒值

exit();  // 退出虛擬機

Properties getProperties() ;  // 獲取當前系統的屬性信息

Properties prop = System.getProperties(); //獲取系統的屬性信息,並將這些信息存儲到Properties集合中。 

System.setProperty("myname","XT"); //給系統屬性信息集添加具體的屬性信息

//臨時設置方式:運行jvm時,可以通過jvm的參數進行系統屬性的臨時設置,可以在java命令的後面加入 D<name>=<value>  用法:java Dmyname=XT 類名。

String name = System.getProperty("os.name");//獲取指定屬性的信息


public class SystemDemo {

 public static void main(String[] args) {

 

  System.out.println(System.getProperties());

 }

}


//===============================================================

API--- java.lang.Runtime: 類中沒有構造方法,不能創建對象。

但是有非靜態方法。說明該類中應該定義好了對象,並可以通過一個static方法獲取這個對象。用這個對象來調用非靜態方法。這個方法就是 static Runtime getRuntime();

這個Runtime其實使用單例設計模式進行設計。

public class RuntimeDemo { 

 public static void main(String[] args)throws Exception {

  //通過靜態方法getRuntime()獲取Runtime對象

  Runtime r = Runtime.getRuntime();

  //開啓一個應用程序

  Process p = r.exec("notepad");

  Thread.sleep(2000);

  p.destroy(); //殺掉進程

 }

}


//===============================================================

API--- java.util.Math: 用於數學運算的工具類,屬性和行爲都是靜態的。該類是final不允許繼承。

static double ceil(double a) ; //返回大於指定數值的最小整數

static double floor(double a) ; //返回小於指定數值的最大整數

static long round(double a) ; //四捨五入成整數

static double pow(double a, double b) ; //ab次冪

static double random(); //返回0~1的僞隨機數


public class MathDemo {

 public static void main(String[] args) {

  method_3();

 }

 /*

  * round

  */

 private static void method_3(){

  double d = Math.round(3.5);

  System.out.println(d);

 }

 

 /*

  * pow方法

  */

 private static void method_2(){

  double d = Math.pow(3,2);

  System.out.println(d);

 }

 

 /*

  * floor方法

  */

 private static void method_1() {

  double d = Math.floor(-12.65);

  System.out.println(d);

 }

 /*

  * ceil方法

  */

 private static void method(){

  double d = Math.ceil(4.0);

  System.out.println(d);

 }

}

//===============================================================

API--- java.util.Date日期類,月份從0-11

/*

日期對象和毫秒值之間的轉換。

1,日期對象轉成毫秒值。Date類中的getTime方法。

2,如何將獲取到的毫秒值轉成具體的日期呢?

Date類中的setTime方法。也可以通過構造函數。 

*/

//日期對象轉成毫秒值

Date d = new Date();

long time1 = d.getTime();

long time2 = System.currentTimeMillis(); / /毫秒值。

//毫秒值轉成具體的日期

long time = 1322709921312l;

Date d = new Date();

d.setTime(time);

/*

將日期字符串轉換成日期對象:使用的就是DateFormat方法中的  Date parse(String source) 

*/

public static void method() throws Exception {

String str_time = "2011/10/25";

DateFormat df = new SimpleDateFormat("yyyy/MM/dd"); //SimpleDateFormat作爲可以指定用戶自定義的格式來完成格式化。

Date d = df.parse(str_time);

}

/*

如果不需要使用特定的格式化風格,完全可以使用DateFormat類中的靜態工廠方法獲取具體的已經封裝好風格的對象。getDateInstance();getDateTimeInstance();

*/

Date d = new Date();

DateFormat df = DateFormat.getDateInstance(DateFormat.LONG);

df = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);

String str_time = df.format(d);

//將日期對象轉換成字符串的方式:DateFormat類中的format方法。

    //創建日期格式對象。 

DateFormat df = new SimpleDateFormat(); //該對象的建立內部會封裝一個默認的日期格式。11-12-1 下午1:48

//如果想要自定義日期格式的話。可使用SimpleDateFormat的構造函數。將具體的格式作爲參數傳入到構造函數中。如何表示日期中年的部分呢?可以必須要參與格式對象文檔。 

df = new SimpleDateFormat("yyyyMMdd日 HH:mm:ss");

//調用DateFormat中的format方法。對已有的日期對象進行格式化。

String str_time = df.format(d);

//===============================================================

API--- java.util. Calendar日曆類

public static void method(){

Calendar c = Calendar.getInstance();

System.out.println(c.get(Calendar.YEAR)+""+(c.get(Calendar.MONTH)+1)+""

+getNum(c.get(Calendar.DAY_OF_MONTH))+""

+"星期"+getWeek(c.get(Calendar.DAY_OF_WEEK)));

}

public static String getNum(int num){

return num>9 ? num+"" : "0"+num;

}

public static String getWeek(int index){

/*

查表法:建立數據的對應關係.

最好:數據個數是確定的,而且有對應關係。如果對應關係的一方,是數字,而且可以作爲角標,那麼可以通過數組來作爲表。

*/

String[] weeks = {"","","","","","","",""};

return weeks[index];

}

//===============================================================

API--- java.math.  BigInteger BigDecimal 大數據處理類

   大數據處理

   BigInteger 整數,BigDecimal 浮點 

   BigInteger構造方法


   BigInteger(String val)

   加法,add 

   減法,subtract

   乘法,multiply

   除法, divide

   BigDecimal

     處理浮點

     divide(被除以的對象,保留位數,保留模式)

     向上保留,向下保留,四捨五入

     UP +1

     Down -1

     Half_Up 四捨五入



mport java.math.*;

public class BigDecimalDemo {

 public static void main(String[] args) {

  BigDecimal big1 = new BigDecimal("5.755");

  BigDecimal big2 = new BigDecimal("3.255");

  //加法

  BigDecimal big3 = big1.add(big2);

  System.out.println(big3);

 

  //減法

  big3 = big1.subtract(big2);

  System.out.println(big3);

 

  //乘法

  big3 = big1.multiply(big2);

  System.out.println(big3);

 

  //除法

  big3 = big1.divide(big2,2,BigDecimal.ROUND_HALF_UP);

  System.out.println(big3);

 }

}



                        --------- android培訓java培訓、java學習型技術博客、期待與您交流! ------------

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