在Java ArrayList中,哪种数据类型不能被存储?

在Java ArrayList中,哪种数据类型不能被存储?

ArrayList 是一个动态的对象列表,您不能在 ArrayList 中存储 int、double、char 或 long 等原始值。在java中创建包装类允许保存原始数据类型,并且属于这些类型的每个对象为其各自的原始数据类型(int、double Short或byte)保存单个值。在Java结构中使用原始数据类型,例如JLists或ArrayLists需要对象,我们需要使用包装器,本文介绍如何使用ArrayList来存储int和char等简单数据类型。

原始数据类型不能存储在ArrayList中

Collection接口只接受Object,包括ArrayList,它是List的一种类型。 Collection 对象的迭代只能使用对象数据类型完成,而不能使用原始数据类型。因此,无法在 ArrayList 中存储整数,必须首先使用 add() 方法将它们转换为整数。必须将每个 int 进行一一相加才能实现此目的。

案例

ArrayList 中的整数

为了将整数添加到 ArrayList,必须首先将它们转换为整数。 add 方法可用于此任务,但每个 int 必须单独添加。例如,我们采用一个包含 3 个值的 int 数组。如果我们想将这些整数作为整数附加到 ArrayList,那么我们需要仔细地迭代它们中的每一个,并使用 for 循环操作分别包含它们。再次说明,在使用 add() 方法时,可以毫无问题地传递整数类型值;但是,如果有时需要将整数添加到仅包含整数的 ArrayList 时,则需要在添加之前先进行强制转换。

示例

// Java Program that uses ArrayList of Integer Values
import java.util.ArrayList;
public class demo {
   public static void main(String[] args) {
      int[] ids = { -3, 0, 100 };
      ArrayList<Integer> values = new ArrayList<>();
      for (int id : ids) {
         values.add(id);
      }
		
      System.out.println(values);
      System.out.println(values.size());
      System.out.println(ids.length);
   }
}

输出

[-3, 0, 100]
3
3

使用 toArray 方法

它用于将 ArrayList 的元素复制到数组。一种涉及转换并产生一个对象数组。但这个变体返回一个类型化数组。

示例

import java.util.ArrayList;
import java.util.List;
public class demo {
   public static void main(String[] args) {
      ArrayList<Integer> list = new ArrayList<>();
      list.add(7);
      list.add(8);
      list.add(9);

      Integer[] array = {};
      array = list.toArray(array);
      for (int elem : array) {
         System.out.println(elem);
      }
   }
}

输出

7
8
9

ArrayList中的字符

Java 的 char 字符 ArrayList 的用例是:

将它们更改为字符。

字符串的值被转换为字符数组列表。

示例

import java.util.ArrayList;
import java.util.List;
public class demo {
   public static void main(String [] args) {
      String string = "Computer Science";
      List<Character> chars = new ArrayList<>();
      for (char ch : string.toCharArray()) {
         chars.add(ch);
      }
      System.out.println(chars);
   }
}

输出

[C, o, m, p, u, t, e, r , S, c, i, e, n, c, e]

结论

Javas 的 ArrayList 实现为运行时对象存储和操作提供了令人印象深刻的功能。但是,某些阵列无法使用此方法,必须以不同方式处理。为了在编程语言中有效地存储特定类型的数据,开发人员必须认识到与此类结构相关的约束并选择不同的存储选项,了解 Java ArrayList 局限性的程序员可以创建高效且有效的软件应用程序。

以上就是在Java ArrayList中,哪种数据类型不能被存储?的详细内容,更多请关注其它相关文章!