黑馬程序員_

--------------------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
--------------------ASP.Net+Android+IOS開發.Net培訓、期待與您交流! --------------------

發佈了46 篇原創文章 · 獲贊 3 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章