2011-08-13 10 views
1

私がもしelse文に午前または午後をテストしようとしています。..amまたはpmのテスト方法は?

if(am){ 
//Do something 
else{ 

//Do something else 

アイブ氏は

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

を試みたが、もしそうでない

は文句を言わないテストするためのパラメータとしてそれを取ります。おそらくブール値ではないからです。

どうすればテストできますか?

答えて

2

if-elseはブール値ではないため、それを受け入れないというのは間違いありません。 Calendar.AM_PMは、値0または1しか保持しません。 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

0とは何ですか?それは似ているのですか? –

+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 
} 
関連する問題