2016-04-14 16 views
0

私の配列リストの各要素のすべての空白を取り除こうとしています。ArrayList内の各String要素の空白を取り除く

私は各要素をループ、テキストを取得し、 .replace(" ","")

を使用することができます

しかし、これまでより容易な方法やアプローチがありますか?

答えて

2

リスト内のすべての要素を調べ、各要素に何かを行うよりも、リスト内の各要素に何か簡単な方法はありません。

リストを反復処理し、値を更新するListIteratorを使用します。にすべて空白(ない単に" ")を交換する

ListIterator<String> itr = list.listIterator(); 
while (itr.hasNext()) { 
    itr.set(itr.next().replaceAll("\\s", "")); 
} 

注意を、あなたはここで示されたように、正規表現を使用する必要があります。

0

このようなオプションはありません。だけでなく、スペース -

import static java.util.stream.Collectors.toList; 
List<String> al = Arrays.asList("This is a ", "sentence", "\t with some", "\nwhite \n space "); 
al.stream().map(s -> s.replaceAll("\\s", "")).forEach(System.out::println); 
List<String> cleaned = al.stream().map(s -> s.replaceAll("\\s", "")).collect(toList()); 

replaceAll機能で\\sは、すべての空白のために一致していることを注意(タブや改行があまりにも):Javaの8での一つのアプローチは、mapリストの要素とcollect結果になります最初のものではありません。単純なreplace関数は、の最初のパターンのみを置き換えます。

例の結果は、以下のようになります。

Thisisa 
sentence 
withsome 
whitespace 
関連する問題