2016-12-10 15 views
0

StringBuilderオブジェクト内の特定の行の最後に文字列を追加する方法はありますか? ここでの出力例です:Java StringBuilderが特定の行に追加する

Test 
X15 = 3 
X18 = 6 
X21 = 2 
... 
... 
私はのは、X21を含む行を言わせるために文字列を追加できるようにしたいと思い

、したがって、出力は次のようになります。

Test 
X15 = 3 
X18 = 6 
X21 = 2 This is a test 
... 
... 

任意の考え?

+0

あなたが試したことを私たちに示す必要があります。 –

+1

それは実際にどのように "追加"の作品ではありません。その行を新しいコンテンツで置き換えることができます –

+0

@ cricket_007 StringBuilder.replace()にはインデックスの開始と終了が必要ですが、インデックスを知らずに行を置き換えるにはどうすればよいですか?方法がない限り、X21が発生するインデックスを見つけることができます。 – Matrix21

答えて

0

これは簡単な方法ではありません。あなたが知っておかなければならないことの一つは、StringBuilderは配列os Stringではないということです。これは文字列のchar配列ですが、Stringとの違いは動的なことです。

文字列「XX」を追加すると、StringBuilderは「XX」になります。別のストリングを追加すると "PP"と言えば、StringBuilderは "XXPP"になります。特定のものに何かを追加するのは簡単な方法ではありません。私はあなたの質問をよく理解していると思います。

それが行わようにするには、一つのことは、StringBuilderのののArrayListを作成するために構成され、そのように、怒鳴る参照してください。あなたは、特定の行に何かを追加したい場合は

List<StringBuilder> allString = new ArrayList<>(); 
//for line 1 
allString.add(new StringBuiler()); 
//for line 2 
allString.add(new StringBuiler()); 

は今、あなただけしなければならない。

allString.get(0).append("X21"); 
allString.get(0).append(" TEST"); 
//line 1 become X21 TEST 

あなたのすべてのテキストを表示するには、リストを反復し、StringBuilderをコンソールまたは別のフローに出力するだけです。

私はあなたを助けてくれることを願っています。

乾杯

関連する問題