回覆列表
  • 1 # 匠工加工

    一、Date型別的初始化

    1、 Date(int year, int month, int date); 直接寫入年份是得不到正確的結果的。 因為java中Date是從1900年開始算的,所以前面的第一個引數只要填入從1900年後過了多少年就是你想要得到的年份。 月需要減1,日可以直接插入。 這種方法用的比較少,常用的是第二種方法。

    2、 這種方法是將一個符合特定格式,比如yyyy-MM-dd,的字串轉化成為Date型別的資料。 首先,定義一個Date型別的物件 Date date = null; 再定義一個String型別的符合格式的字串 String dateStr = "2010-9-10"; 把這個字串進行拆分 String[ ] dateDivide = dateStr.split("-"); 把年月日分別取出,賦給Calendar,用 Calendar的getTime();取得日期再賦給date。

    import java.util.Calendar;

    import java.util.Date;

    public class Main4 {

    /**

    * @param args

    */

    public static void main(String[] args) {

    Date date=null;

    String dateStr="2010-9-10";

    String[] dateDivide=dateStr.split("-");

    if(dateDivide.length==3){

    int year = Integer.parseInt(dateDivide [0].trim());//去掉空格

    int month = Integer.parseInt(dateDivide [1].trim());

    int day = Integer.parseInt(dateDivide [2].trim());

    Calendar c = Calendar.getInstance();//獲取一個日曆例項

    c.set(year, month-1, day);//設定日曆的日期

    date = c.getTime();

    }

    System.out.println(date);

    }

    }

    二、Date型別的比較

    Date a;

    Date b;

    假設現在你已經例項化了a和b

    a.after(b)返回一個boolean,如果a的時間在b之後(不包括等於)返回true

    b.before(a)返回一個boolean,如果b的時間在a之前(不包括等於)返回true

    a.equals(b)返回一個boolean,如果a的時間和b相等返回true

    import java.text.SimpleDateFormat;

    import java.util.Calendar;

    import java.util.Date;

    public class Main4 {

    /**

    * @param args

    */

    public static void main(String[] args) {

    //Date date=null;

    //String dateStr="2010-9-10";

    //String[] dateDivide=dateStr.split("-");

    //if(dateDivide.length==3){

    // int year = Integer.parseInt(dateDivide [0].trim());//去掉空格

    // int month = Integer.parseInt(dateDivide [1].trim());

    // int day = Integer.parseInt(dateDivide [2].trim());

    // Calendar c = Calendar.getInstance();//獲取一個日曆例項

    // c.set(year, month-1, day);//設定日曆的日期

    // date = c.getTime();

    //}

    // System.out.println(date);

    //Date型別常用的操作函式

    //1.-----計算某一個月份的最大天數

    Calendar calendar=Calendar.getInstance();

    //使用set方法之前必須先clear一下,否則很多資訊會繼承自系統當前時間

    //calendar.clear();

    //calendar.set(Calendar.YEAR,2018);

    //calendar.set(Calendar.MONTH,3-1);

    //int day=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

    // 2.------Calendar和Date的轉化

    //-----Calen

  • 2 # 程式設計頌

    一、Date型別的初始化

    1、 Date(int year, int month, int date); 直接寫入年份是得不到正確的結果的。 因為java中Date是從1900年開始算的,所以前面的第一個引數只要填入從1900年後過了多少年就是你想要得到的年份。 月需要減1,日可以直接插入。 這種方法用的比較少,常用的是第二種方法。

    2、 這種方法是將一個符合特定格式,比如yyyy-MM-dd,的字串轉化成為Date型別的資料。 首先,定義一個Date型別的物件 Date date = null; 再定義一個String型別的符合格式的字串 String dateStr = "2010-9-10"; 把這個字串進行拆分 String[ ] dateDivide = dateStr.split("-"); 把年月日分別取出,賦給Calendar,用 Calendar的getTime();取得日期再賦給date。

    import java.util.Calendar;

    import java.util.Date;

    public class Main4 {

    /**

    * @param args

    */

    public static void main(String[] args) {

    Date date=null;

    String dateStr="2010-9-10";

    String[] dateDivide=dateStr.split("-");

    if(dateDivide.length==3){

    int year = Integer.parseInt(dateDivide [0].trim());//去掉空格

    int month = Integer.parseInt(dateDivide [1].trim());

    int day = Integer.parseInt(dateDivide [2].trim());

    Calendar c = Calendar.getInstance();//獲取一個日曆例項

    c.set(year, month-1, day);//設定日曆的日期

    date = c.getTime();

    }

    System.out.println(date);

    }

    }

    二、Date型別的比較

    Date a;

    Date b;

    假設現在你已經例項化了a和b

    a.after(b)返回一個boolean,如果a的時間在b之後(不包括等於)返回true

    b.before(a)返回一個boolean,如果b的時間在a之前(不包括等於)返回true

    a.equals(b)返回一個boolean,如果a的時間和b相等返回true

    import java.text.SimpleDateFormat;

    import java.util.Calendar;

    import java.util.Date;

    public class Main4 {

    /**

    * @param args

    */

    public static void main(String[] args) {

    //Date date=null;

    //String dateStr="2010-9-10";

    //String[] dateDivide=dateStr.split("-");

    //if(dateDivide.length==3){

    // int year = Integer.parseInt(dateDivide [0].trim());//去掉空格

    // int month = Integer.parseInt(dateDivide [1].trim());

    // int day = Integer.parseInt(dateDivide [2].trim());

    // Calendar c = Calendar.getInstance();//獲取一個日曆例項

    // c.set(year, month-1, day);//設定日曆的日期

    // date = c.getTime();

    //}

    // System.out.println(date);

    //Date型別常用的操作函式

    //1.-----計算某一個月份的最大天數

    Calendar calendar=Calendar.getInstance();

    //使用set方法之前必須先clear一下,否則很多資訊會繼承自系統當前時間

    //calendar.clear();

    //calendar.set(Calendar.YEAR,2018);

    //calendar.set(Calendar.MONTH,3-1);

    //int day=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

    // 2.------Calendar和Date的轉化

    //-----Calendar轉化為Date--

    Date date=calendar.getTime();

    System.out.println(date);//Sat Mar 24 11:39:55 CST 2018

    //-----Date轉化為Calendar--

    Date date1=new Date();

    Calendar calendar1=Calendar.getInstance();

    calendar1.setTime(date1);

    //3.----計算一年中的第幾星期是幾號

    SimpleDateFormat df=new SimpleDateFormat();

    Calendar calen=Calendar.getInstance();

    calen.set(Calendar.YEAR,2018);

    calen.set(Calendar.WEEK_OF_YEAR,4);

    calen.set(Calendar.DAY_OF_WEEK,4);

    System.out.println(df.format(calen.getTime()));

    //add方法

    SimpleDateFormat dff=new SimpleDateFormat("yyyy-MM-dd");

    Calendar calll=Calendar.getInstance();

    calll.set(Calendar.YEAR,2018);

    calll.set(Calendar.MONTH,4);

    calll.set(Calendar.DAY_OF_MONTH,24);

    calll.add(Calendar.DATE,-4);

    Date dateee=calll.getTime();

    System.out.println(dff.format(dateee));

    calll.add(Calendar.DAY_OF_MONTH,-4);

    //calll.add(Calendar.DATE,-4); 相等

    Date datee1=calll.getTime();

    System.out.println(dff.format(datee1));

    }

    }

  • 中秋節和大豐收的關聯?
  • 空氣能熱水器風機停了壓縮機還在起動怎麼原因?