2016-11-10 14 views
1

indexOf(char)メソッドとループのメソッドを使用して、共通文字を2つの文字列で検索するプログラムを作成するように求められます。これまでのところ、出力はまだ空白になっています。Java:2つの文字列で共通文字を見つける

import java.util.Scanner; 
public class ClassName { 
    public static void main (String args []) { 

    Scanner input = new Scanner (System.in); 

    String a = ""; 
    String b = ""; 
    String c = ""; 

    System.out.print("Enter two words: ") 
    a = input.nextLine(); 
    b = input.nextLine(); 

    for (int i = 0; i < a; i++){ 

     char ch = a.charAt(i); 
     if (b.indexOf(ch) != -1){ 
     c = c+String.valueOf(ch); 
     } 
     } 
System.out.print("Common letters are: "+c); 
} 

}

output here

私はどこここから行くのか分かりません。あなたは「開発者に対し」を比較する場合

おかげ

+1

リアム私たちは、あなたがテキストをプリントアウトしているか見ることができるように、すべてのあなたのコードを投稿する必要があります。ここでのベストプラクティスは、すべての関連コードを投稿することです。 – BlackHatSamurai

+0

はい、コードをすべて入れてください。私は、上記のコードスニペットをオンラインのJava IDEで実行しようとしましたが、うまくいきました。私はaとbをそれぞれ "table"と "cable"に初期化しました。私はcのために "有能"と表示されました。それがあなたのために働いていない場合は、おそらくあなたがaとbを初期化する方法に何か問題があります。 – VHS

+0

これは本当に尋ねる必要のない種類の質問です。デバッガを使用してコードをステップ実行すると、何がうまくいかなかったかがわかります。 –

答えて

1

は、あなたのコードは「プログラマ」そうしないと、あなたの結果の文字列が電子文字

3時間が含まれますに例えば共通の文字を複製します例から

public class CommonCharsFinder { 

    static String findCommonChars(String a, String b) { 
     StringBuilder resultBuilder = new StringBuilder(); 
     Set<Character> charsMap = new HashSet<Character>(); 
     for (int i = 0; i < a.length(); i++) { 
      char ch = a.charAt(i); //a and b are the two words given by the user 
      if (b.indexOf(ch) != -1){ 
       charsMap.add(Character.valueOf(ch)); 
      } 
     } 

     Iterator<Character> charsIterator = charsMap.iterator(); 
     while(charsIterator.hasNext()) { 
      resultBuilder.append(charsIterator.next().charValue()); 
     } 
     return resultBuilder.toString(); 
    } 
    // An illustration here 
    public static void main(String[] args) { 
     String s1 = "developper"; 
     String s2 = "programmer"; 

     String commons = findCommonChars(s1, s2); 
     System.out.println(commons);  
    } 

} 

結果:私はあなたにも、このような設定を使用することを示唆しているという行動をしたいです:

enter image description here

+0

混乱のおかげで申し訳ありませんが、このサイトを使用することを学んでいます(また、明らかにコードを作成する方法)。そして、質問の別の要求であった@alainlompo - それはうまくいくようです。ありがとう! – benny

+0

@bennyあなたは大歓迎です、スタックオーバーフローを続けてください、それは覚えて共有するのに最適な場所です:) – alainlompo

関連する問題