一、System類
System是描述系統一些信息的類,類中的屬性和方法都是靜態的。不能被實例化,沒有提供構造函數。
out:標準輸出流。默認是控制檯。
in:標準輸入流。默認是鍵盤。
獲取系統的屬性信息:Properties getProperties();
1、此方法返回的雙列集合,即鍵值對;因爲Properties是Hahstable的子類,也就是Map集合的一個子類對象,那麼通過Map方法取出該集合中的元素。
2、該集合存儲的都是字符串,沒有泛型定義
獲取指定屬性信息:
String getProperty(Stringkey);
在系統內定義特有信息:
String setProperty(Stringkey,String value);
在jvm啓動時,加載一些屬性信息:
通過命令:java -D<name>=<value>可以設置特有的系統屬性信息
public static void main(String[] args){
Properties prop = System.getProperties();//獲取系統配置信息
System.setProperty("mykey","myvalue");//設置一個配置信息
String value = System.getProperty("os.name");//獲得操作系統的信息
System.out.println("value="+value);
String v = System.getProperty("haha");
System.out.println("v="+v);
}
1、每個java應用程序都有一個Runtime類實例,使用應用程序能與其中運行的環境相連接,應用程序不能創建自己的Runtime類的實例,是由系統底層自己創建的。
2、該類中並沒有提供構造函數。使用了單例設計模式完成對象的獲取
獲取本類對象:
static Runtime getRuntime();
在單獨的進程中執行指定字符串命令
Process exec(String command);
在Process中有一個殺掉子進程的方法,可將exec方法開啓的進程結束
void destroy();
class RuntimeDemo {
public static void main(String[] args) throws Exception {
Runtime r = Runtime.getRuntime();// 獲取本類對象
Process p = r.exec("notepad.exe");// 執行記事本程序
r.exec("notepad.exe RuntimeDemo.java");// 用記事本打開指定文件
Thread.sleep(3000);
p.destroy();
}
}
三、Date類
Date類表示特定的瞬間,精確到毫秒。
自定義格式:SimpleDateFormat類,
具體步驟:
1、創建Date對象
2、將時間模式封裝到SimpleDateFormat對象中
3、調用format方法讓格式化模式指定Date對象
import java.util.*;
import java.text.*;
class DateDemo {
public static void main(String[] args) {
Date d = new Date();
// //將模式封裝到SimpleDateformat對象中。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日E HH:mm:ss");
// 調用format方法讓模式格式化指定Date對象。
String time = sdf.format(d);
System.out.println(time);
}
}
1、Calendar是一個抽象類,它爲特定瞬間與一組諸如YEAR、MONTH、DAY_OF_MONTH等日曆字段之間的轉換提供了一些方法。
2、Calendar可以對年月日等時間進行獲取。
3、通過 Calender.getInstance()獲取Calender對象
基本獲取時間
1)獲取年份:Calendar.YEAR
2)獲取月份:Calendar.MONTH
3)獲取日期:Calendar.DAY_OF_MONTH
4)獲取星期:Calendar.DAY_OF_WEEK
5)獲取小時:Calendar.HOUR_OF_DAY
6)獲取分鐘:Calendar.MINUTE
7)獲取秒數:Calendar.SECOND
import java.util.Calendar;
public class CalenderDemo {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
String[] mons = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月",
"十月", "十一月", "十二月" };
String[] weeks = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
int index = c.get(Calendar.MONTH);
int index1 = c.get(Calendar.DAY_OF_WEEK);
System.out.println(c.get(Calendar.YEAR) + "年");
System.out.println(mons[index]);
System.out.println(c.get(Calendar.DAY_OF_MONTH) + "日");
System.out.println(weeks[index1-1]);
}
}
Math 類包含用於執行基本數學運算的方法,如初等指數、對數、平方根和三角函數。該類全爲靜態方法。
常用方法:
1、double ceil(double d);//返回大於指定數據的最小整數
2、double floor(double d);//返回小於指定數據的最大整數
3、double pow(doublea,double b);//返回a的b次方
4、long round(doubleb);//返回b四捨五入的值
5、double random();//返回正號的double值,是一個大於等於0.0且小於1.0的隨機數
Random類:
這是java.util中的一個單獨的類,該類對象用於獲取隨機數。與Math中的random方法是一樣的,不過這個類有自身的方法,可以將相應的隨機數強轉爲指定基本數據類型。
如:int nextInt(int n);//返回一個僞隨機數,它是取自此隨機數生成器序列的、在 0(包括)和指定值(不包括)之間均勻分佈的 int值。
public class MathDemo {
public static void main(String[] args) {
double d = Math.ceil(16.34);// ceil返回大於指定數據的最小整數。
double d1 = Math.floor(12.34);// floor返回小於指定數據的最大整數。
long l = Math.round(12.54);// 四捨五入
System.out.println(d);
System.out.println(d1);
System.out.println(l);
}
}