Javaの道 Javaに関する
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道 >  掲示板 >  掲示板(ArrayListで要素判断)
閲覧数:802
掲示板(ArrayListで要素判断)
名前
匿名
題名 ArrayListで要素判断
質問内容

質問を評価する
(0ポイント)
ArrayListを使い、リストの要素が特定の文字列である場合、リストを出力したいのですが
containsを使うのかとやってみましたがまったくわかりませんでした。
サイトを探してみるも見つからず。javaではこれを使うのはよくないのでしょうか?
質問日時 2013-05-07 08:07:16
名前
匿名
回答内容

回答を評価する
(0ポイント)
http://ideone.com/ZRBXcY

基本こんな感じ。

org.apache.commons.collection フレームワークを使用す
る場合もある。

containers は 完全一致検索
回答日時 2013-05-07 08:40:27
名前
匿名
回答内容

回答を評価する
(0ポイント)
>リストの要素が特定の文字列である場合、
「リストに特定の文字列が要素として含まれている場合」なら、contains()で問題ない。
「リストの要素が特定の文字列1つの場合」とか「リストの要素の文字列に特定の文字列を含んでいる場合」とか。
いろいろ考えられるので、具体例を出してみよう。
回答日時 2013-05-07 13:12:52
名前
匿名
回答内容

回答を評価する
(0ポイント)
回答ありがとうございます。
私がやろうとしていることは、リストの要素が特定の文字列1つの場合のみ出力しようとしているので、containsでは求められないということですね。
ArraylistでindexOfは使用できることは知らなかったので驚きました。ありがとうございます
回答日時 2013-05-07 23:42:51
名前
匿名
回答内容

回答を評価する
(0ポイント)
すみません少し混乱してきたのでもう一度整理させてください。
要素の中に特定の文字がある場合のみリストを出力したいのでcontains()で大丈夫ということですね。
しかしcontains()だとtrue表記になってしまうのでリスト名で出力できる方法があるのでしょうか?
回答日時 2013-05-08 00:32:55
名前
匿名
回答内容

回答を評価する
(0ポイント)
2013-05-07 08:40:27 で書いたソースの応用でいける。

by 2013-05-07 08:40:27 の匿名

回答日時 2013-05-08 01:32:05
名前
匿名
回答内容

回答を評価する
(0ポイント)
お返事ありがとうございます。
自分のコードに書き換えてみるとコンパイルは通るのですが
Exception in thread "main" java.util.ConcurrentModificationExceptionのエラーが出てしまいます。
回答日時 2013-05-08 01:40:58
名前
匿名
回答内容

回答を評価する
(0ポイント)
あー、Iterator操作をしている時にListに変更を加えたら
そうなるね・w・)


回答日時 2013-05-08 08:41:38
名前
匿名
回答内容

回答を評価する
(0ポイント)
特定の文字列の要素1つのみ、なのであれば、
l.size()==1&&STR.equals(l.get(0))だろう。
お勧めしないが、l.toString()との比較もできないことはない。

どうしてもiterate内でremoveしたいなら、ListIteratorを
調べるのも良いだろう。
しかし、何でも一回で済ませれば良いわけではない。
回答日時 2013-05-08 09:22:53

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。



このページのトップへ
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道_CopyrightJavaの道