【Calender類】
Calendar類是一個抽象類,它爲特定瞬間與一組諸如YEAR
、MONTH
、DAY_OF_MONTH
、
HOUR
等日曆字段
之間的轉換提供了一些方法,併爲操作日曆字段(例如獲得下星期
的日期)提供了一些方法。瞬間可用毫秒值來表示,它是距曆元(即格林威治標準時間
1970年 1月 1日的 00:00:00.000,格里高利曆)的偏移量。
-publicstaticCalendargetInstance():
使用默認時區和語言環境獲得一個日曆。返回的Calendar
基於當前時間,使用
了默認時區和默認語言環境。可用該方法獲取日曆
例如:
String[]months = {"一月","二月","三月","四月",
"五月","六月","七月","八月",
"九月","十月","十一月","十二月"};
String[]weeks = {"","星期日","星期一","星期二",
"星期三","星期四","星期五","星期六"};
Calendarc = Calendar.getInstance();
//sop(c);
sop(c.get(Calendar.YEAR));
intm = c.get(Calendar.MONTH);//計算機中,用0~11表示一到十二月
sop(months[m]);
sop(c.get(Calendar.DATE));
intw = c.get(Calendar.DAY_OF_WEEK);//計算機中,用1~7表示星期日到星期六
sop(weeks[w]);
【Math類】
public finalclassMath extends Object:
Math
類包含用於執行基本數學運算的方法,如初等指數、對數、平方根和三角函
數。
【Math類中常用的方法】
1、 abs:
返回指定數據的絕對值,該方法有多種重載形式,請參考API文檔
如:int a = Math.abs(-11); //a =11
2、 public static double ceil(double a):
返回大於指定數據的最小整數
如:double c = Math.ceil(12.4); //c = 13.0
3、 public static double floor(double a):
返回小於指定數據的最大整數
如:double f =Math.floor(-12.4); //f = -13.0
4、publicstatic doublepow(double a,double b):
返回第一個參數的第二個參數次冪的值。
如:double p = Math.pow(2,3); //p= 8.0
5、 public static double sqrt(double a):
返回正確舍入的double
值的正平方根。
如:double s = Math.sqrt(4); //s= 2.0
6、 public static double random():
返回帶正號的 double值,該值大於等於 0.0且小於1.0。返回值是一個僞隨機選擇的數,在該範圍內(近似)均勻分佈。第一次調用該方法時,它將創建一個新的僞隨機數生成器,與以下表達式完全相同 new java.util.Random之後,新的僞隨機數生成器可用於此方法的所有調用,但不能用於其他地方。
如:int n = (int)(Math.random()*10+1);//獲取1~10之間的隨機數
*Random類的實例用於生成僞隨機數流。
-nextInt():
返回下一個僞隨機數,它是此隨機數生成器的序列中均勻分佈的
int
值。nextInt
的常規協定是,僞隨機地生成並返回一個int
值。所有 232個可能int
值的生成概率(大致)相同。
如:
Random r = new Random();//創建一個僞隨機數生成器
int n = r.nextInt();//獲取一個整型隨機數
-nextInt(int n):
返回一個僞隨機數,它是取自此隨機數生成器序列的、在 0(包括)
和指定值(不包括)之間均勻分佈的int
值。nextInt
的常規協
定是,僞隨機地生成並返回指定範圍中的一個int
值。所有可能的
n個int
值的生成概率(大致)相同。
如:
Random r = new Random();
int n = nextInt(10);//獲取一個0~10(包含0不包含10)之間的一個隨機數
【Properties類】
public classPropertiesextends Hashtable<Object,Object>:
Properties
類表示了一個持久的屬性集。Properties可保存在流中或從流中加
載。屬性列表中每個鍵及其對應值都是一個字符串。Properties類值Map的子類,
所以具備Map集合的特點,而且存儲的鍵值對都是字符串,所以不用定義泛型。
Properties類是集合中和IO技術相結合的集合容器,可以用來建立鍵值對形式的
配置信息文件。在加載數據時,需要有固定格式:鍵=值,否則不會讀取。
【Properties類中的常用方法】
publicObjectsetProperty(String key,String value):
調用Hashtable的方法put。設置指定鍵指示的系統屬性。返回值是
Hashtable 調用put的結果。
publicStringgetProperty(String key):
用指定的鍵在此屬性列表中搜索屬性。如果未找到屬性,則此返回null。
publicSet<String>stringPropertyNames():
返回此屬性列表中的鍵集。
publicvoidlist(PrintStream out):
將屬性列表輸出到指定的輸出流。
publicvoidlist(PrintWriter out):
將屬性列表輸出到指定的輸出流。
publicvoidload(InputStream inStream)throwsIOException:
從輸入流中讀取屬性列表(鍵和元素對)。
publicvoidload(Reader reader)throwsIOException:
按簡單的面向行的格式從輸入字符流中讀取屬性列表(鍵和元素對)。
publicvoidstore(Writer writer,String comments)throwsIOException:
以適合使用load(Reader)方法的格式,將此Properties表中的屬性列表(鍵
和元素對)寫入輸出字符。comments
可用作一個標識註釋,註釋前會有’#’
符號。同時寫入的還有當前系統時間註釋
publicvoidstore(OutputStream out,String comments)throwsIOException:
以適合使用load(InputStream)方法加載到Properties表中的格式,將此
Properties表中的屬性列表(鍵和元素對)寫入輸出流。
例:編寫程序可以讀取配置文件中的屬性信息,並將修改後的屬性信息會寫到配置中
Propertiesprop = new Properties();
//創建輸入流對象,並與配置文件相關聯
FilReaderfr = new FileReader("info.txt");
//從輸入流中讀取屬性列表
prop.load(fr);
//修改屬性信息
prop.setProperty("03","java007");
//創建輸出流對象,並與配置文件相關聯
fw= new FileWriter("info.txt");
//將屬性列表寫入輸出流對象
prop.store(fw,"lws");
prop.list(System.out);
System.out.println("修改成功!!!");