0

ダリウスベーコンのコードの11行目と12行目には、次のコードがあります。

prefixes = set(word[:i] for word in words for i in range(2, len(word)+1))

私は彼のプログラムをJavaに翻訳しようとしていますが、これに問題があります。

これは何をしますか?

4

2 に答える 2

6

リスト内包表記の拡張:

prefixes = set()
for word in words:
    for i in range(2, len(word)+1)
        prefixes.add(word[:i])

word[:i]wordインデックスまでですが、インデックスは含まれていませんi

于 2012-11-11T17:44:54.813 に答える
3

Javaでこれを試してください

Set<String> prefixes = new HashSet<String>();
for(String word:words){
  for(int i=1;i<word.length;i++){ 
     prefixes.add(word.substring(0,i));
  }
}
于 2012-11-11T17:48:09.287 に答える