日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java其他API介绍

發布時間:2025/7/14 java 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java其他API介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

有一些類雖然不像集合、多線程、網絡編程中的類那樣屬于Java中的核心類,但是它們在開發過程中給我們帶來很多便利,這里就對它們做下簡要的介紹和演示。

一、System類

System類中的構造方法是私有的,System類中的屬性和方法都是靜態的。

常用方法:?long currentTimeMills():返回以毫秒值為單位的當前時間。

System 類包含一些有用的類字段和方法。下面的演示就獲取了本地系統的信息,并把它們打印出來。

1 package www.wsw.otherApi; 2 import java.util.Properties; 3 import java.util.Set; 4 5 public class SystemTest { 6 /** 7 * 跨平臺的分隔符,在什么平臺上運行,就調用那個平臺的換行符 8 * 另外。可以把系統的常用信息定義成靜態字段,方便使用。 9 */ 10 public static String line_speparator=System.getProperty("line.separator"); 11 12 public static void main(String[] args) { 13 //常用方法: long currentTimeMills() 14 long l1=System.currentTimeMillis();//返回以毫秒值為單位的當前時間 15 System.out.println(l1);//1490005710792 16 demo_1(); 17 } 18 19 public static void demo_1() { 20 /** 21 * 獲取系統信息的鍵和值,并存儲到Properties集合中 22 * Properties是HashTable的子類,它的鍵和值都是String類型的 23 * 最好使用Properties自己的方法來完成元素的存儲和取出操作 24 */ 25 Properties properties=System.getProperties(); 26 // Set<String> stringPropertyNames() 返回此屬性列表中的鍵集 27 Set<String> nameSet=properties.stringPropertyNames(); 28 for(String name:nameSet){ 29 String value=properties.getProperty(name); 30 System.out.println(name+"::"+value); 31 } 32 } 33 34 }

?

二、 Runtime類

每個 Java 應用程序都有一個 Runtime 類實例,使應用程序能夠與其運行的環境相連接。可以通過 getRuntime 方法獲取當前運行時。

應用程序不能創建自己的 Runtime 類實例。

有exec方法和destroy方法,參見演示。

1 package www.wsw.otherApi; 2 import java.io.IOException; 3 4 public class RuntimeDemo { 5 6 public static void main(String[] args) throws IOException, InterruptedException { 7 /** 8 * Runtime沒有構造方法摘要,說明該類不能夠創建對象, 9 * 又該類有非靜態方法,則Runtime類有能返回該類實例的靜態方法, 10 * 發現這樣的方法只有一個,則Runtime類使用了單例設計模式 11 */ 12 Runtime r=Runtime.getRuntime(); 13 //execute 執行 exe 14 Process p=r.exec("notepad.exe D:\\abc\\MapDemo.java");//打開記事本,并用它解析D盤目錄下的一個文件 15 //Process是一個抽象類 16 Thread.sleep(2000); 17 p.destroy();//殺掉子進程 18 19 } 20 21 }

?

三、Math類

* Math類中都是做數學運算的靜態方法
* 常用方法:
* ceil():返回大于等于參數的最小整數
* floor():返回小于等于參數的最大整數
* round():返回參數四舍五入得到的整數
* pow(a,b):返回a的b次方
*
* random():返回[0,1)范圍內的偽隨機數

1 package www.wsw.otherApi; 2 3 public class MathDemo { 4 5 public static void main(String[] args) { 6 7 double d1=Math.ceil(-7.67);//-7.0 8 double d2=Math.floor(-7.67);//-8.0 9 double d3=Math.round(-7.67);//-8.0 10 sop("d1="+d1); 11 sop("d2="+d2); 12 sop("d3="+d3); 13 14 sop(Math.pow(10,2)+"");//100.0 15 16 //獲取10個1-6之間的隨機數 17 for (int i = 0; i < 10; i++) { 18 //double d= (int)(Math.random()*6)+1; 19 double d=Math.ceil(Math.random()*6); 20 /** 21 * 也可以寫為: 22 * Random r=new Random();//Random位于Java.util包中,把隨機數封裝成了對象 23 * 提供更多的方法 24 * int d=r.nextInt(6)+1; 25 */ 26 27 sop(d+""); 28 } 29 30 } 31 //方便輸出 32 public static void sop(String str) { 33 System.out.println(str); 34 } 35 36 }

?

四、Date類和DateFormat類

Date類屬于java.util包,類 Date 表示特定的瞬間,精確到毫秒。

它允許把日期解釋為年、月、日、小時、分鐘和秒值。它也允許格式化和解析日期字符串。不過,這些函數的 API 不易于實現國際化。

從 JDK?1.1 開始,應該使用 Calendar 類實現日期和時間字段之間轉換,使用 DateFormat 類來格式化和解析日期字符串。Date 中的相應方法已廢棄。

DateFormat 屬于java.text包,是日期/時間格式化子類的抽象類,它以與語言無關的方式格式化并解析日期或時間。

?

?把毫秒值轉化為Date對象
* 1.Date的構造方法
* 2.通過setTime方法
* 作用:可以使用Date類中的方法對Date對象的字段(年月日等)進行操作
*
* 把Date對象轉化為毫秒值
* 1.getTime方法
* 作用:可以對毫秒值進行運算,算出時間差等
*
* 其他方法
* boolean before(Date when):判斷此日期是否在指定日期之前
* boolean after():判斷此日期是否在指定日期之后
* boolean equals():判斷此日期和指定日期是否相等
* int compareTo():返回正負零

?

下面的演示中還涉及到兩個轉化,把日期字符串轉為為Date對象和把Date對象轉化為按某種格式的日期字符串,

分別使用了DateFormat類中的parse方法和format方法。

1 package www.wsw.otherApi; 2 3 import java.text.DateFormat; 4 import java.text.ParseException; 5 import java.text.SimpleDateFormat; 6 import java.util.Date; 7 8 public class DateDemo { 9 10 public static void main(String[] args) throws ParseException { 11 12 methodDemo_3(); 13 } 14 /** 15 * 將日期字符串-->日期對象 16 * @throws ParseException 日期轉換異常 17 */ 18 public static void methodDemo_3() throws ParseException { 19 String str="2017--03--29"; 20 DateFormat dateFormat=new SimpleDateFormat("yyyy--MM--dd"); 21 /** 22 * String str="2017年3月1日"; 23 * DateFormat dateFormat=DateFormat.getDateInstance(DateFormat.LONG); 24 */ 25 Date date=dateFormat.parse(str); 26 System.out.println(date);//Wed Mar 29 00:00:00 CST 2017 27 28 } 29 /** 30 * 將日期對象進行格式化 31 * 將日期對象-->日期格式的字符串 32 * 使用的是DateFormat中的format方法 33 */ 34 public static void methodDemo_2() { 35 Date date=new Date(); 36 //獲取日期格式器對象,并為默認的風格 可以指定Long full風格等 37 DateFormat dateFormat1=DateFormat.getDateInstance(DateFormat.FULL); 38 //獲取日期/時間格式器對象 39 DateFormat dateFormat2=DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); 40 41 //如果,想要使用自定義的格式呢? 42 DateFormat dateFormat3=new SimpleDateFormat("MM月~dd日--yyyy年"); 43 String str1=dateFormat1.format(date); 44 String str2=dateFormat2.format(date); 45 String str3=dateFormat3.format(date); 46 System.out.println(str1);//2017年3月22日 星期三 47 System.out.println(str2);//2017年3月22日 下午02時14分06秒 48 System.out.println(str3);//03月~22日--2017年 49 } 50 51 public static void methodDemo_1() { 52 long l=System.currentTimeMillis(); 53 Date d=new Date();//把當前時間封裝為Date對象 54 Date d2=new Date(1490023019659l);//把毫秒值轉化為Date對象 55 System.out.println(d);//Mon Mar 20 23:18:58 CST 2017 56 System.out.println(d2);//Mon Mar 20 23:16:59 CST 2017 57 } 58 59 }

Date類練習

練習:計算“2017年6月1日”和“2017年3月22日”之間相差多少天?
* 思路:
* 1.把日期字符串轉化為Date對象
* 2.把Date對象轉化為相應的毫秒值,然后相減
* 3.把毫秒值轉化為天

1 package www.wsw.otherApi; 2 3 import java.text.DateFormat; 4 import java.text.ParseException; 5 import java.util.Date; 6 7 public class DateTest { 8 9 public static void main(String[] args) throws ParseException { 10 int day=subDate("2017年5月1日","2017年3月22日"); 11 System.out.println(day); 12 } 13 14 public static int subDate(String str1, String str2) throws ParseException { 15 DateFormat dateFormat=DateFormat.getDateInstance(DateFormat.LONG); 16 Date date1=dateFormat.parse(str1); 17 Date date2=dateFormat.parse(str2); 18 19 long time1=date1.getTime(); 20 long time2=date2.getTime(); 21 long time =time1-time2; 22 int day=getDay(time); 23 return day; 24 } 25 /** 26 * 把毫秒值轉化為天數 27 * @param time 毫秒值 28 * @return 天數 29 */ 30 public static int getDay(long time) { 31 int day=(int) (time/1000/60/60/24); 32 return day; 33 } 34 35 } View Code

?

五、Calendar類

Calendar 類是一個抽象類,它為特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日歷字段之間的轉換提供了一些方法,

并為操作日歷字段(例如獲得下星期的日期)提供了一些方法。

1 package www.wsw.otherApi; 2 import java.util.Calendar; 3 4 public class CalendarDemo { 5 6 public static void main(String[] args) { 7 Calendar c=Calendar.getInstance(); 8 9 //使用Calendar類中的方法獲取某年的2月有多少天 10 showDays(2016);//2016年2月29日星期一 11 } 12 13 public static void showDays(int year) { 14 Calendar c=Calendar.getInstance(); 15 c.set(year, 2, 1);//把日期設置為某年的三月一號 16 c.add(Calendar.DAY_OF_MONTH, -1);//把日期向前偏移一天 17 showDate(c); 18 } 19 20 //獲取日歷字段,得到符合中國人習慣的日期顯示 21 public static void showDate(Calendar c) { 22 int year=c.get(Calendar.YEAR); 23 int month=c.get(Calendar.MONTH)+1;//0代表1月 24 int day=c.get(Calendar.DAY_OF_MONTH); 25 int week=c.get(Calendar.DAY_OF_WEEK);//1代表星期天,7代表星期六 26 27 System.out.println(year+"年"+month+"月"+day+"日"+getWeek(week));//2017年3月22日星期三 28 } 29 30 public static String getWeek(int week) { 31 String[] weeks={"","星期天","星期一","星期二","星期三","星期四","星期五","星期六"}; 32 return weeks[week]; 33 } 34 35 }

?

轉載于:https://www.cnblogs.com/wsw-tcsygrwfqd/p/6600547.html

總結

以上是生活随笔為你收集整理的Java其他API介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。