arraylistの要素のチェック方法について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
まるみ

arraylistの要素のチェック方法について

#1

投稿記事 by まるみ » 11年前

javaでandroid用のゲームを作ってます。

教えて欲しいのですが、
arraylistの要素がすべて1000になってるかどうかをチェックして
全て1000ならFlagを立てるって処理を行いたいのですが、
この場合、ループで1要素ずつ確認していくしかないのでしょうか?

arraylist には文字列ではなく、数値が入ってます。

よろしくお願いします。

YuO
記事: 947
登録日時: 14年前
住所: 東京都世田谷区

Re: arraylistの要素のチェック方法について

#2

投稿記事 by YuO » 11年前

AndroidはJava 6相当なので,すべて見るしか方法はないと思います。
Java 8ならばstreamが使えるので,

コード:

import java.util.List;
import java.util.ArrayList;

public class Test
{
    public static void main (String[] args)
    {
        List<Integer> list = new ArrayList<>();
        for (int i = 0; i < 10000; ++i) {
            list.add(1000);
        }
        System.out.println(list.stream().allMatch(n -> n == 1000));
        list.set(500, 0);
        System.out.println(list.stream().allMatch(n -> n == 1000));
    }
}
と書けるのですが……。

かずま

Re: arraylistの要素のチェック方法について

#3

投稿記事 by かずま » 11年前

これでどうでしょうか?

コード:

import java.util.List;
import java.util.ArrayList;
 
public class Test {
    public static void main (String[] args) {
        List<Integer> list = new ArrayList<Integer>(10000);
        for (int i = 0; i < 10000; i++) list.add(1000);

        List<Integer> v = new ArrayList<Integer>(1);
        v.add(1000);
        boolean flag = v.containsAll(list);
        System.out.println(flag);

        list.set(500, 0);
        flag = v.containsAll(list);
        System.out.println(flag);
    }
}

まるみ

Re: arraylistの要素のチェック方法について

#4

投稿記事 by まるみ » 11年前

かずま さん

containsAllというのがあるんですね。
これで試してみたいと思います。

情報ありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る