--------------------ASP.Net+Android+IOS開發、.Net培訓、期待與您交流! --------------------
1. System
下面介紹一個方法,獲得系統運行的一些文件信息
import java.util.Properties;
public class ClassDemo {
public static void main(String[] args) {
/* static Properties getProperties()獲得系統的所有屬性
* Properties是Hashtable的子類,所以我們可以使用keySet獲得鍵集,然後獲得信息 */
Properties p = System.getProperties();
/*static String getProperty(String key)方法獲得指定鍵的值*/
System.out.println("user.country:"+p.getProperty("user.country"));
/*static String setProperty(Stringkey,String value)
* 利用此方法可以自定義設置屬性值*/
p.setProperty("mySet", "helloworld");
System.out.println("mySet:"+p.getProperty("mySet"));
System.out.println("下面是系統的屬性,開始讀取:");
for(Object ob:p.keySet()){
System.out.println(ob+":"+p.getProperty((String)ob));
}
}
}
部分結果:
user.country:CN
mySet:hello world
下面是系統的屬性,開始讀取:
java.runtime.name:Java(TM)SE Runtime Environment
mySet:hello world
sun.boot.library.path:E:\instalfile\JDK1\bin
java.vm.version:23.7-b01
java.vm.vendor:OracleCorporation
java.vendor.url:http://java.oracle.com/
2. Runtime
import java.io.IOException;
import java.util.Properties;
public class ClassDemo {
public static void main(String[] args) throws IOException {
/*
* getRuntime()方法獲得Runtime對象 Process exec(Stringcommand)開始執行程序
*/
Runtime r = Runtime.getRuntime();// 獲得應用程序實例
Process qq = r.exec("D:\\QQ\\Bin\\QQ.exe");// 運行此程序
/* destroy()方法停止線程 */
try {
Thread.sleep(500);
qq.destroy();
} catch (InterruptedException e) {
// TODO Auto-generatedcatch block
e.printStackTrace();
}
}
}
public class Sy {
public static void main(String [] s) throws IOException,InterruptedException{
Runtime run=Runtime.getRuntime();
Process pro=run.exec("notepad.exe F:\\11.txt");//執行進程
Thread.sleep(5000);
pro.destroy();//結束進程
}
}
3. 日期類
1. Date,SimpleDateFormat
import java.text.SimpleDateFormat;
import java.util.Date;
public class ClassDemo {
public static void main(String[] args) {
Date d = new Date();
System.out.println("系統時間:" + d);
SimpleDateFormat sim = new SimpleDateFormat("yyyy年MM月dd日 hh時mm分ss秒");
String newDate = sim.format(d);// 把系統時間按照自定義的格式輸出
System.out.println("系統時間:" + newDate);
}
}
結果:
系統時間:Sun Sep 29 15:23:50 CST 2013
系統時間:2013年09月29日 03時23分50秒
2. Calendar
1.基本操作
package www.fuxi.IO;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class ClassDemo {
public static void main(String[] args) {
getYMD();// 獲得年月日
SetDate();// 設置年月日
OpDate();
}
/* 獲得單個的年月日 */
public static void getYMD() {
String[] months = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月",
"九月", "十月", "十一月", "十二月" };
Calendar calen = Calendar.getInstance();// 獲得日曆對象,也可以實例化子類
/* 獲得年使用日曆對象調用get()方法 */
System.out.println(calen.get(Calendar.YEAR));
/* 獲得月使用日曆對象調用get()方法 */
int index = Calendar.MONDAY;
System.out.println(months[calen.get(index)]);
/* 獲得日使用日曆對象調用get()方法 */
System.out.println(calen.get(Calendar.DAY_OF_MONTH));
}
/* 設置日期 */
private static void SetDate() {
/* final void set(int year, intmonth,int date)設置年月日 */
Calendar calen = Calendar.getInstance();
calen.set(2015, 04, 05);
System.out.print("設置到日期:");
System.out.println(calen.get(Calendar.YEAR) + "年"
+ calen.get(Calendar.MONTH) + "月"
+ calen.get(Calendar.DAY_OF_MONTH) + "日");
}
/* 設置日期,對日期字段進行操作 */
public static void OpDate() {
/* add(int field, int amount)對日期字段進行操作 */
Calendar calen = Calendar.getInstance();
System.out.println("當前日期:"+calen.get(Calendar.YEAR) + "年"
+ calen.get(Calendar.MONTH) + "月"
+ calen.get(Calendar.DAY_OF_MONTH) + "日");
calen.add(Calendar.YEAR, 10);// 將年增加20
System.out.println("增加10年:"+calen.get(Calendar.YEAR) + "年");
}
}
結果:
2013
九月
29
設置到日期:2015年4月5日
當前日期:2013年8月29日
增加10年:2023年
2.練習
獲取某年的二月的天數
思路:先設置年,然後月和日爲02,01,這據表示3月1號
然後將日減1,那麼就是二月的最後一天,此時的day就是當前年二月的天數
public class ClassDemo {
public static void main(String[] args) {
System.out.println("2013年2月的天數:"+getErYueDay(2013));
}
public static int getErYueDay(int year){
Calendar c=Calendar.getInstance();
c.set(year, 02,01);//設置年月日
c.add(Calendar.DAY_OF_MONTH,-1);//Day -1
int day=c.get(Calendar.DAY_OF_MONTH);
return day;
}
}
結果:
2013年2月的天數:28
我們還有一個方法就是判斷閏年和平年,閏年二月29天,平年28天
4. Math
public class ClassDemo {
public static void main(String[] args) {
double a=23.4;
System.out.println("大於"+a+"的最小整數是:"+Math.ceil(a));
System.out.println("小於"+a+"的最大整數是:"+Math.floor(a));
System.out.println("最接近"+a+"的double數"+Math.round(a));
System.out.println("返回0~1之間的隨機數不包含1的數:"+Math.random());
Random r=new Random();
System.out.println("返回0~1之間的隨機數不包含1的數:"+r.nextDouble());
System.out.println("返回一個整數隨機數:"+r.nextInt());
System.out.println("返回一個小於50的整數隨機數:"+r.nextInt(50));
}
}
結果:
大於23.4的最小整數是:24.0
小於23.4的最大整數是:23.0
最接近23.4的double數23
返回0~1之間的隨機數不包含1的數:0.31784177008869685
返回0~1之間的隨機數不包含1的數:0.8839091521841245
返回一個整數隨機數:-282379189
返回一個小於50的整數隨機數:26
5. 練習
把一個小數保留兩位小數
public class ClassDemo {
public static void main(String[] args) {
double d = 23.2872;
/* 第一種 */
int d1 = (int) (d * 100);
System.out.println(d1 *0.01);
/*第二種:轉換成字符串*/
String s=new Double(d).toString();
if(s.contains(".")){
System.out.println(s.substring(0, s.indexOf(".") + 3));
}
/*第三種*/
DecimalFormat df=new DecimalFormat("#.00");
System.out.println(df.format(d));
}
}
結果:
23.28
23.28
23.29