2011-08-13 83 views
1

我想在如果else語句來測試上午或下午..如何測試上午或下午?

if(am){ 
//Do something 
else{ 

//Do something else 

我用盡

int am = cld.get(Calendar.AM_PM); 

但如果其他

不會把它作爲一個參數測試。也許是因爲它不是布爾值。

我該如何去測試呢?

回答

2

你是正確的if-else不會接受它,因爲它不是布爾值。 Calendar.AM_PM只能保存值01。像C這樣的語言會接受0或1作爲布爾值; Java不會。

你想要做更多的東西是這樣的:

int am = cld.get(Calendar.AM_PM); 
if (am == 0) { 
    // Do whatever for the AM 
} else { 
    // Do whatever because it must be PM 
} 
0

當然,你的if子句不能接受整數,因爲它是。你需要一些東西(比較可能)來獲取布爾值。

if(am > 0) 
    { 
     //its PM 
    else { //its AM } 
+0

whats the 0 mean?它與我的比較是什麼? –

+0

http://developer.android.com/reference/java/util/Calendar.html#AM 這就是爲什麼0,AM常數值爲0。 –

0

Calendar.AM_PM是一個int。要在if語句中對其進行評估,請將其轉換爲布爾值:

if((bool)am) { 
    //It's AM 
} else { 
    //It's PM 
}