2012-02-10 10 views
1

これは期待通りの方法ではありません。サンプル入力には、エーテル0または1と似たアスタリスクが含まれます。残りの数字は、数字が一致するかどうかを比較しています。文字をアスタリスクかどうか試してみると、それは期待通りに動作しません。シンプルなJavaの問題

サンプル:

ORG = * 01

ビット= 001 || 101 || 011

public static void doesItWork(String org, String bit) 
    { 
     for(int i = 0; i <= org.length() - 1; i++) 
     { 
      System.out.println(org.substring(i, i + 1)); 
      if(org.substring(i, i + 1) != "*" && org.substring(i, i + 1) != bit.substring(i, i + 1)) 
       break; 

      if(i == org.length() - 1) 
       System.out.println(bit); 
     } 
    } 

ありがとうございました。

+1

この宿題はありますか? –

答えて

7

!=オンStringさんはあなたがしたいことをしません。 Java String.equals versus ==は説明していますが、簡単に、

org.substring(i, i + 1) != "*" 

はおそらく

!org.substring(i, i + 1).equals("*") 

または理想的

org.charAt(i) != '*' 
+0

私が探しているものとまったく同じです。ありがとうございました。 –

+0

@KevinRead、よろしくお願いします。あなたのプロジェクトに幸運。 –

0

する必要があります!=文字列は良いアイデアではないかもしれませんし。試してみてください!x.equals( "*");

+0

また、別の言語のjavaの初心者ですが、正規表現を知っている方は、java、java.util.Regexで試してみてください –

関連する問題