2013-05-15 34 views
1

工作,我有一個字符串equals()方法是不是有串

number="(1234)5678"; 

但如果不執行塊:

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

如何更改布爾表達式來執行,如果塊?

+0

在你的情況下,你可以使用''''的'startsWith()'方法,這可能更容易理解,你在做什麼:http://docs.oracle.com/javase/6/docs/ API/JAVA/LANG/String.html#startsWith%28java.lang.String 29% –

回答

1

你可以試試下面的代碼:

if(number.startsWith("(", 0)) 
    { 
     System.out.println("IFFF"); 
    } 
    else 
    {   
     System.out.println("OUT"); 
    } 
12

charAt()返回一個char。比較charString.equals()將始終返回false

你需要

if('(' == number.charAt(0)) 
3

這是因爲charAt(..)回報charString。而在String類equals if子句的一個就是:

if (anObject instanceof String) { 
    ... 
    } 
0

或者你可以把:如果(number.charAt(0)=='( 「)

0

的的charAt()函數總是返回char..equals()用於比較字符串。

人物是原語,你可以用 「==」 運營商對它們進行比較。

String number="(1234)5678"; 
    if('(' == number.charAt(0)) 
       { 
        System.out.println("IFFF"); 
       } 
       else 
       { 
        System.out.println("OUT"); 
       }