一度だけ表示される文字の最初の文字列を検索するために機能を実装してください:オファー(Javaバージョンに)第六十疑問を受賞。例えば、文字ストリームは最初の2つの文字を読み取ったときに、最初の文字は、唯一の「G」一度起こる「行きます」。最初の6つの文字を読み出すときに最初に一つだけの文字「L」が表示され、文字ストリームから「グーグル」。

/ *
文字が表示されるだけで、初めての文字ストリームを見つけるために使用される機能を実装します。
例えば、文字ストリームは最初の2つの文字を読み取ったときに、最初の文字は、唯一の「G」一度起こる「行きます」。
最初の6つの文字を読み出すときに最初に一つだけの文字「L」が表示され、文字ストリームから「グーグル」。
* /
//出力説明:
//現在の文字列が文字がある表示されない場合は、#文字が返されます。

輸入java.utilの。*;

パブリッククラスClass60 {

StringBufferのSB =新規のStringBuffer();

公共ボイド挿入(チャーCH){
sb.append(CH)。
}

公共チャーfirstAppearingOnce(){
CHAR [] charArray = sb.toString()toCharArray()。
HashMapの<文字、整数>マップ=新しいHashMapの<文字、整数>();
int型のカウント;
以下のために(INT iが= 0; I <charArray.length; I ++){
IF(map.containsKey(charArray [I])){
カウント= map.get(charArray [I])。
map.put(charArray [i]は、++のカウント)。
}他{
map.put(charArray [i]は、I)。
}
}
のために(INT iは= 0; I <charArray.length; I ++){
(map.get(charArray [I])== 1){場合
charArrayを返す[I]。
}
}
'#'を返します。
}

パブリック静的無効メイン(文字列[] args){
// TODO自動生成方法スタブ

}

}

おすすめ

転載: www.cnblogs.com/zhuozige/p/12548602.html
おすすめ