2016-03-18 11 views
-3

Pythonにはin演算子があり、これを単純化しています。しかし、どのように私はJavaのdoesntはin演算子を持って以来、私は以下のpythonの概念をjavaで実装するのですか? これはあなたが三項演算子とString.indexOfでこれを模倣することができますPythonプログラムPythonプログラムをJava言語で実装する方法

secret_word = "python" 
correct_letters = "oy" 
count = 0 
while count < len(secret_word): 
    print(secret_word[count] if secret_word[count] in correct_letters else '_', end=" ") 
    count += 1 
+0

'someString.contains(someOtherString);' –

答えて

1

です:

System.out.println(correct_letters.indexOf(secret_word.charAt(count)) > -1 ? secret_word.charAt(count) : '_') 

あなたはピーターの助言@従うと置き換える正規表現を使用する必要があり、言った:

System.out.println(secret_word.replaceAll("[^" + Pattern.quote(correct_letters) + "]","_")); 
+0

'contains()'がより明確です。 – bcsb1001

+0

@ bcsb1001文字列を使ってindexOfを使用するほうがずっと効率的です。なぜなら、文字列操作を一括して行う必要がないからです。 –

0

あなたはこのようにはしません。私は正規表現を使用します。

String secret_word = "python"; 
String correct_letters = "oy"; 
System.out.println(secret_word.replaceAll("[^"+correct_letters+"]", "_")); 

これは、正しいもの以外のすべての文字をマスクします。私はPythonで正規表現を使用することができると思う。

関連する問題