2009-09-02 8 views
3

私はJavaでPythonの機能を模倣したいと思っています。 Pythonで 私はちょうど、 Pythonの機能に相当するJava - > set(文字列)

text = "i am a string" 
print set(text) # o/p is set(['a', ' ', 'g', 'i', 'm', 'n', 's', 'r', 't']) 

がどのように私は自明または直接Javaでこれを行うことができ、私が行うことができ、文字列内で一意の文字をしたい場合は?

答えて

7
String str = "i am a string"; 
System.out.println(new HashSet<String>(Arrays.asList(str.split("")))); 

EDIT:str.splitがセットに空の文字列が含まれますので、彼らはまったく同じではないことを、オブジェクト人のために、私たちも、より詳細にそれを行うことができます。

String str = "i am a string"; 
Set<String> set = new HashSet<String>(Arrays.asList(str.split(""))); 
set.remove(""); 
System.out.println(set); 

しかし、のもちろん、それはあなたが達成する必要があるものに依存します。

+3

python wands 4 terseness – Claudiu

+1

String.split( "")に結果に空の文字列が含まれているため、これはうまくいきません。 "hello" .split( "")は ''、 'h'、 'e'、 'l'、 'l'、 'o'です。 – mikej

+0

@mikej技術的には出力は ''、 'h'、 'e'、 'l'、 'o'です。しかし、私はあなたのポイントを得る。私はこの操作の結果をさらに処理するので、現在のソリューションは私には役立ちます。 – Chantz

関連する問題