如何只获取整数对象,仅获取字符串对象,甚至获取整数对象...?

时间:2020-06-23 05:09:11

标签: java

大家好,我正在学习ArrayList并在其中玩,我能够创建一个基本的ArrayList。 我想完成以下任务:我正在尝试其他方法,但无法获得。

        - Get only Integer objects:
        - Get only String Objects
        - Get only even Integer objects
        - Get Integer and Double Objects.
        - Get all String Objects starts with "S".
        - Get all String Objects which contains a.

=======================这是我的程序===================== =====

import java.io.Serializable;
import java.util.*;

public class ArrayListDemo1 {



    public static void main(String[] args) {
        ArrayList al = new ArrayList();

        System.out.println("Before = " + al.size());
        al.add(10);
        al.add(43);
        al.add(32.5);
        al.add(10);
        al.add(null);
        al.add('A');
        al.add("ABC");
        al.add(10.12);
        al.add(true);
        al.add("Hello");
        al.add(600);
        al.add(900);
//        System.out.println(al);
//        System.out.println("After = " + al.size());
//        System.out.println(al instanceof Cloneable); //true
//        System.out.println(al instanceof Serializable); //true
//        System.out.println(al instanceof RandomAccess);
//        System.out.println(al instanceof List);
//        System.out.println(al instanceof Collection);
//        System.out.println(al instanceof Set);
//        ArrayList<Integer> a1 = al;
//        System.out.println(a1);

  
    }
}

2 个答案:

答案 0 :(得分:1)

您可以使用for循环遍历每个Object并检查它是Integer还是String。然后,您可以检查所有指定的子条件。

for (Object obj: al) {
    if (obj instanceof String){
        // this  is string 
    } else if (obj instanceof Integer) {
       // this  is Integer 
    }
}

答案 1 :(得分:0)

只需使用的实例来检查给定元素的类型。例如,要获取整数的元素,请尝试:

for (int i = 0; i < al.size() ; i++){
    if(al.get(i) instanceof Integer){
        System.out.println(al.get(i));
    }
}

哪个输出:

10
43
10
600
900