1,System:
System :類中的方法和屬性都是靜態的。
out:標準輸出,默認是控制檯。
in,標準輸入,鍵盤默認呢
描述系統一些信息。
獲取系統屬性信息:Properties getProperties();
import java.util.Properties;
public class SysTest {
public static void main(String[] args) {
Properties prop = System.getProperties();
// 因爲Properties 是hashtable的子類,也就是Map集合的有一個子類對象
// 那麼可以通過map的方法取出該集合中的元素。
// 該集合中存儲的都是字符串,沒有泛型定義。
//如何在系統中自定義系統信息。
System.setProperty("mykey", "myvalue");
String value=System.getProperty("os.name");
System.out.println("value="+value);
/*
*獲取所有屬性信息。
for (Object obj : prop.keySet()) {
String value = (String) prop.get(obj);
System.out.println(obj + "::" + value);
}*/
}
}
2,Runtime
沒有構造函數,不能直接創建對象。會直接想到該類中的方法都是靜態的。
但是,有方法摘要,方法都是非靜態的。
對象通過方法來獲取,而且該方法是靜態的,並返回值類型是本類類型。getRuntime()返回與當前java應用程序相關的運行時對象。
該方法是static Runtime getRuntime().;
由這個特點可以看出單例設計模式。
import java.io.IOException;
public class RuntimeTest {
public static void main(String[] args) throws IOException, Exception {
Runtime r = Runtime.getRuntime();
Process p= r.exec("notepad.exe c:\\SysTest.java");
Thread.sleep(4000);
p.destroy();
}
}
3,Date
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTest {
public static void main(String[] args) {
Date d = new Date();
System.out.println(d);// Wed Jul 24 10:35:51 CST 2013,打印的時間看不懂,希望有些格式
// 將模式封裝到SimpleDateformat對象中。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 E hh:mm:ss");
// 調用format方法讓模式格式化指定對象。
String time = sdf.format(d);
System.out.println("time:" + time);// time:2013年07月24日 星期三 10:45:23
}
}
4,Calender
import java.util.Calendar;
public class CalenderTest {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
System.out.println(c);
/*
* System.out.println(c.get(Calendar.YEAR) + "年" +
* (c.get(Calendar.MONTH) + 1) + "月" + (c.get(Calendar.DAY_OF_MONTH) +
* 1) + "日" + "星期" + (c.get(Calendar.WEEK_OF_MONTH) - 1) + " " +
* c.get(Calendar.HOUR) + "時" + c.get(Calendar.MINUTE) + "分" +
* c.get(Calendar.SECOND) + "秒");
*/
// 查表法
String[] month = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月",
"九月", "十月", "十一月", "十二月" };// 月份從0開始。
String[] week = { "", "星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };// 星期天是第一天
System.out.println(c.get(Calendar.YEAR) + "年");
int index = c.get(Calendar.MONTH);
System.out.println(month[index] + "月");
int index2 = c.get(Calendar.WEEK_OF_MONTH);
System.out.println(week[index2]);
}
}
import java.util.Calendar;
/*
* 1,獲取任意年的二月有多少天
* 思路:根據指定的年設置一個時間,c.set(year,2,1)//某一年的三月一日
* c.add(Calendar.DAY_OF-MONTH,-1);//三月一日往前推一天就是2月的最後一天
* 2,獲取昨天現在的時刻
* c.add(Calendar.DAY_OF_MONTH,-1);
*/
public class CalenderTest {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
c.add(Calendar.YEAR, 4);//加4年
printCalendar(c);
}
public static void printCalendar(Calendar c){
String[] month = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月",
"九月", "十月", "十一月", "十二月" };// 月份從0開始。
String[] week = { "", "星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };// 星期天是第一天
System.out.println(c.get(Calendar.YEAR) + "年");
int index = c.get(Calendar.MONTH);
System.out.println(month[index] + "月");
int index2 = c.get(Calendar.WEEK_OF_MONTH);
System.out.println(week[index2]);
}
}
import java.util.Random;
//Math.random()和new java.util.Random方法完全相同
public class MathTest {
public static void main(String[] args) {
for (int x = 0; x < 10; x++) {
double d = Math.random();// 大於等於0.0且小於1.0
// printObj(d);
/*
* int num=(int)(Math.random()*10+1);//1-10
*
* printObj(num);
*/
Random r = new Random();
int n = r.nextInt(10);// 0-10,但是不包含10,兩種方式,哪一種都可以。
printObj(n);
}
}
public static void show() {
// double d= Math.ceil(-16.3);//ceil返回大於指定數據的最小整數,返回-16
double d = Math.ceil(16.3);
double d1 = Math.floor(16.3);// floor返回小於指定數據的最大整數。
long l = Math.round(12.34);// 四捨五入
double d2 = Math.pow(2, 3);// 2的三次方
printObj(d);
printObj(d1);
printObj(l);
printObj(d2);
}
public static void printObj(Object obj) {
System.out.println(obj);
}
}