1

私は文字列を持っています

number="(1234)5678";

ただし、if ブロックは実行されません。

if("(".equals(number.charAt(0)))
{
   System.out.println("IFFF");
}
else
{
   System.out.println("OUT");
}

if ブロックを実行するようにブール式を変更するにはどうすればよいですか?

4

5 に答える 5

12

charAt()を返しますchar。と を比較するcharString.equals()常に が返されfalseます。

あなたは必要になるでしょう

 if('(' == number.charAt(0))
于 2013-05-15T06:58:54.590 に答える
3

これは、 をcharAt(..)返さcharないためStringです。そしてequals、String クラスの if 節の 1 つは次のとおりです。

   if (anObject instanceof String) {
   ...
   }
于 2013-05-15T06:59:01.563 に答える
1

次のコードを試すことができます:

if(number.startsWith("(", 0))
    {
      System.out.println("IFFF");
    }
    else
    {         
      System.out.println("OUT");
    }
于 2013-05-15T07:11:09.027 に答える
0

または、次のように置くこともできます: if(number.charAt(0)=='(')

于 2013-05-15T07:15:23.157 に答える