幾個類System ,Runtime,Date,Calender,Math

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);
	}
}


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