PHP字串長度找子字串與取代字串的常用函數

PHP在字串的操作上,有非常多的相關函數可以使用,我們在這裡只介紹經常會使用到的字串操作函數。像是如何取得字串的長度、在某一個字裏面尋找子字串首次出現的位置、以及字串的取代函數...等等。這些都是在編寫程式的時候,頻繁被程式設計師使用到的基礎函數。 取得字串長度 <?...

顯示具有 Java日曆使用 標籤的文章。 顯示所有文章
顯示具有 Java日曆使用 標籤的文章。 顯示所有文章

2012年7月18日 星期三

equals(Object obj)方法 - Java日曆類別

回java日曆類別使用主頁

equals(Object obj)方法

比較目前日曆時間與指定日曆時間是否相等。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample029 {

  /**
   @param args
   */
  public static void main(String[] args) {
    
    //cal1為2012/7/18 (目前時間)
    Calendar cal1 = Calendar.getInstance();
    
    //cal2為2012/7/18
    Calendar cal2 = Calendar.getInstance();    
    
    if(cal1.equals(cal2)){
      System.out.println("兩日曆相等");
    }

  }

}


執行結果








compareTo(Calendar anotherCalendar)方法 - Java日曆類別

回java日曆類別使用主頁

compareTo(Calendar anotherCalendar)方法

比較兩個日曆時間的大小。
  • 回傳值等於0代表兩日曆等價
  • 回傳值小於0代表目前日曆小於指定日曆
  • 回傳值大於0代表目前日曆大於指定日曆

程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample028 {

  /**
   @param args
   */
  public static void main(String[] args) {
    
    //cal1為2012/7/18 (目前時間)
    Calendar cal1 = Calendar.getInstance();
    
    //cal2為1998/7/18
    Calendar cal2 = Calendar.getInstance();
    cal2.set(Calendar.YEAR, 1998);
    
    int flag = cal1.compareTo(cal2);
    if(flag == 0){
      System.out.println("兩日曆相等");
    }else if(flag > 0){
      System.out.println("cal1日曆大於cal2日曆");
    }else{
      System.out.println("cal1日曆小於cal2日曆");
    }    

  }

}


執行結果








before(Object when)方法 - Java日曆類別

回java日曆類別使用主頁

before(Object when)方法

回傳目前日曆時間是否在指定日曆時間之前,若是則為真值(true)


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample027 {

  /**
   @param args
   */
  public static void main(String[] args) {  
    
    //cal1為2000/7/18
    Calendar cal1 = Calendar.getInstance();
    cal1.set(Calendar.YEAR, 2000);
    
    //cal2為2012/7/18 (目前時間)
    Calendar cal2 = Calendar.getInstance();
    
    //判斷cal1日曆時間是否在cal2日曆時間之前
    if(cal1.before(cal2)){
      System.out.println("cal1日曆時間小於cal2日曆時間");
    }

  }

}


執行結果








after(Object when)方法 - Java日曆類別

回java日曆類別使用主頁

after(Object when)方法

回傳目前日曆時間是否在指定日曆時間之後,若是則為真值(true)


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample026 {

  /**
   @param args
   */
  public static void main(String[] args) {
    //cal1為2012/7/18 (目前時間)
    Calendar cal1 = Calendar.getInstance();
    
    //cal2為2005/7/18
    Calendar cal2 = Calendar.getInstance();
    cal2.set(Calendar.YEAR, 2005);
    
    //判斷cal1日曆時間是否在cal2日曆時間之後
    if(cal1.after(cal2)){
      System.out.println("cal1日曆時間大於cal2日曆時間");
    }

  }

}


執行結果








setTimeInMillis(long millis)方法 - Java日曆類別

回java日曆類別使用主頁

setTimeInMillis(long millis)方法

依給定的long值來設定目前日曆的現在時間。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample025 {

  /**
   @param args
   */
  public static void main(String[] args) {
    
    //建一個2002/5/21的日曆
    Calendar cal = Calendar.getInstance();
    cal.set(2002421)
    long millis = cal.getTimeInMillis();    
    
    //再將剛建好的日曆時戳設到新時曆cal1內
    Calendar cal1 = Calendar.getInstance();
    cal1.setTimeInMillis(millis);
    
    System.out.println("新日曆時間: "+cal1.getTime());

  }

}


執行結果








getTimeInMillis()方法 - Java日曆類別

回java日曆類別使用主頁

getTimeInMillis()方法

回傳以毫秒表示的目前日曆時間戳值。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample024 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    
    //以毫秒表示的目前日曆時戳
    System.out.println("目前日曆時戳: "+cal.getTimeInMillis());

  }

}


執行結果








setFirstDayOfWeek(int value)方法 - Java日曆類別

回java日曆類別使用主頁

setFirstDayOfWeek(int value)方法

設定一星期中的第一天。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample023 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    
    //將一星期的第一天設為「星期六」
    cal.setFirstDayOfWeek(Calendar.SATURDAY);
    System.out.print("更改後一星期的第一天: ");
    System.out.println(convertWeek(cal.getFirstDayOfWeek()));

  }
  
  /**
   * 轉換星期
   @param wk
   @return
   */
  public static String convertWeek(int wk){
    String[] aliasWeeks = new String[]
      {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
    return aliasWeeks[wk];
  }

}


執行結果








getFirstDayOfWeek()方法 - Java日曆類別

回java日曆類別使用主頁

getFirstDayOfWeek()方法

取得一星期中的第一天,例如美國是星期日、法國是星期一。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample022 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    
    int firstDayOfWeek = cal.getFirstDayOfWeek();
    System.out.print("目前一星期的第一天: ");
    System.out.println(convertWeek(firstDayOfWeek));
    
  }
  
  /**
   * 轉換星期
   @param wk
   @return
   */
  public static String convertWeek(int wk){
    String[] aliasWeeks = new String[]
      {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
    return aliasWeeks[wk];
  }

}


執行結果








setTimeZone(TimeZone value)方法 - Java日曆類別

回java日曆類別使用主頁

setTimeZone(TimeZone value)方法

依給定的TimeZone值來設定時區。


程式範例

package jcode.test.calendar;

import java.util.Calendar;
import java.util.TimeZone;

public class Sample021 {

  /**
   @param args
   */
  public static void main(String[] args) {
    
    //取得美國太平洋標準時間
    TimeZone tz = TimeZone.getTimeZone("America/Los_Angeles");    

    //將時區設到新的日曆
    Calendar cal = Calendar.getInstance();
    cal.setTimeZone(tz);
    
    System.out.print("新日曆時區: ");
    System.out.println(cal.getTimeZone().getDisplayName());

  }

}


執行結果








getTimeZone()方法 - Java日曆類別

回java日曆類別使用主頁

getTimeZone()方法

取得時區。


程式範例

package jcode.test.calendar;

import java.util.Calendar;
import java.util.TimeZone;

public class Sample020 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    TimeZone zone = cal.getTimeZone();
    
    System.out.println("時區: "+zone.getDisplayName());
    System.out.println("時區(ID): "+zone.getID());    

  }

}


執行結果








setTime(Date date)方法 - Java日曆類別

回java日曆類別使用主頁

setTime(Date date)方法

依給定日期值來設定目前的日曆時間。


程式範例

package jcode.test.calendar;

import java.text.ParsePosition;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

public class Sample019 {

  /**
   @param args
   */
  public static void main(String[] args) {
    
    //取得2003/2/13日的日期資訊
    Date date = getDate("2003/2/13""yyyy/MM/dd");
    
    //設定該日曆為2003/2/13日
    Calendar cal1 = Calendar.getInstance();
    cal1.setTime(date);    
    System.out.println("該日曆時間: "+cal1.getTime());

  }
  
  /**
   * 將字串轉日期
   @param dateString
   @param format
   @return
   */
  public static Date getDate(String dateString, String format) {
    Locale locale = Locale.US;
    SimpleDateFormat formatter = new SimpleDateFormat(format, locale);
    ParsePosition pos = new ParsePosition(0);
    return formatter.parse(dateString, pos);
  }

}


執行結果








getTime()方法 - Java日曆類別

回java日曆類別使用主頁

getTime()方法

回傳代表目前日曆時間值的時期物件。


程式範例

package jcode.test.calendar;

import java.util.Calendar;
import java.util.Date;

public class Sample018 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    
    Date now = cal.getTime();
    System.out.println("現在的時間: "+now);

  }

}


執行結果








set(int year, int month, int date, int hourOfDay, int minute, int second)方法 - Java日曆類別

回java日曆類別使用主頁

set(int year, int month, int date, int hourOfDay, int minute, int second)方法

針對日曆欄位的年、月、日、時、分、秒來設定值。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample017 {

  /**
   @param args
   */
  public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
    
    //設定年、月、日、時、分的數值
    int year = 2000;
    int month = 0;
    int day = 1;
    int hour = 6
    int minute = 20;
    int second = 19;
    cal.set(year, month, day, hour, minute, second);
    
    //取得修改後的年/月/日
    int alterYear = cal.get(Calendar.YEAR);
    int alterMonth = cal.get(Calendar.MONTH);
    alterMonth = convertMonth(alterMonth);
    int alterDay = cal.get(Calendar.DAY_OF_MONTH);
    int alterHour = cal.get(Calendar.HOUR_OF_DAY);
    int alterMinute = cal.get(Calendar.MINUTE);
    int alterSecond = cal.get(Calendar.SECOND);
    System.out.println(alterYear+"/"+alterMonth+"/"+alterDay+" "
        +alterHour+":"+alterMinute+":"+alterSecond);

  }
  
  /**
   * 月份轉換方法
   @param mon
   @return
   */
  public static int convertMonth(int mon){
    int[] aliasMonth = {1,2,3,4,5,6,7,8,9,10,11,12};
    return aliasMonth[mon];
  }

}


執行結果








set(int year, int month, int date, int hourOfDay, int minute)方法 - Java日曆類別

回java日曆類別使用主頁

set(int year, int month, int date, int hourOfDay, int minute)方法

針對日曆欄位的年、月、日、時、分來設定值。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample016 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    
    //設定年、月、日、時、分的數值
    int year = 2000;
    int month = 0;
    int day = 1;
    int hour = 6
    int minute = 20;
    cal.set(year, month, day, hour, minute);
    
    //取得修改後的年/月/日
    int alterYear = cal.get(Calendar.YEAR);
    int alterMonth = cal.get(Calendar.MONTH);
    alterMonth = convertMonth(alterMonth);
    int alterDay = cal.get(Calendar.DAY_OF_MONTH);
    int alterHour = cal.get(Calendar.HOUR_OF_DAY);
    int alterMinute = cal.get(Calendar.MINUTE);
    System.out.println(alterYear+"/"+alterMonth+"/"+alterDay+" "+alterHour+":"+alterMinute);

  }
  
  /**
   * 月份轉換方法
   @param mon
   @return
   */
  public static int convertMonth(int mon){
    int[] aliasMonth = {1,2,3,4,5,6,7,8,9,10,11,12};
    return aliasMonth[mon];
  }

}


執行結果








set(int year, int month, int date)方法 - Java日曆類別

回java日曆類別使用主頁

set(int year, int month, int date)方法

針對日曆欄位的年、月、日來設定值。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample015 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();  
    
    //設定年、月、日的數值
    int year = 2000;
    int month = 0;
    int day = 1;
    cal.set(year, month, day);
    
    //取得修改後的年/月/日
    int alterYear = cal.get(Calendar.YEAR);
    int alterMonth = cal.get(Calendar.MONTH);
    alterMonth = convertMonth(alterMonth);
    int alterDay = cal.get(Calendar.DAY_OF_MONTH);
    System.out.println(alterYear+"/"+alterMonth+"/"+alterDay);    

  }
  
  /**
   * 月份轉換方法
   @param mon
   @return
   */
  public static int convertMonth(int mon){
    int[] aliasMonth = {1,2,3,4,5,6,7,8,9,10,11,12};
    return aliasMonth[mon];
  }

}


執行結果








set(int field, int value)方法 - Java日曆類別

回java日曆類別使用主頁

set(int field, int value)方法

設定指定日曆欄位並賦予給定值。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample014 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    
    //設定年份的欄位代碼
    int field = Calendar.YEAR;
    
    //依給予的年份代碼,設定2001的數值
    int value = 2001;
    cal.set(field, value);
    
    //取得修改後的年份為2001年
    int alterYear = cal.get(field);
    System.out.println("修改後年份為"+alterYear+"年");

  }

}


執行結果







add(int field, int amount)方法 - Java日曆類別

回java日曆類別使用主頁

add(int field, int amount)方法

增加或減少特定時間的數值到給定的日曆欄位,根據日曆的規則。


程式範例

package jcode.test.calendar;

import java.util.Calendar;

public class Sample013 {

  /**
   @param args
   */
  public static void main(String[] args) {
    Calendar cal = Calendar.getInstance();
    
    //設定年份的欄位代碼
    int field = Calendar.YEAR;
    
    //取得今年為2012年
    int thisYear = cal.get(field);
    System.out.println("今年為"+thisYear+"年");
    
    //依給予的年份代碼,加入-3的數值
    int amount = -3;    
    cal.add(field, amount);
    
    //取得修改後的年份為2009年
    int alterYear = cal.get(field);
    System.out.println("修改後年份為"+alterYear+"年");

  }

}


執行結果