java 指定arraylist的size可以用未初始化的变量吗
时间: 2024-02-13 09:04:34 浏览: 106
可以使用未初始化的变量来指定ArrayList的初始大小,但这可能会导致运行时错误或不可预测的行为。因为未初始化的变量的值是不确定的,所以在使用它们来初始化ArrayList时,可能会得到不正确的大小。
在Java中,未初始化的局部变量的默认值是未定义的,因此最好在使用它们之前对它们进行初始化。如果您想使用一个变量来指定ArrayList的大小,最好在使用它之前对其进行初始化,以确保它具有正确的值。
例如,以下代码显示了如何使用一个未初始化的变量来指定ArrayList的大小:
```java
int n; // 未初始化的变量
ArrayList<Integer> list = new ArrayList<>(n);
```
在这个例子中,变量n未初始化,因此它的值是未定义的。这可能会导致在创建ArrayList时出现错误或不可预测的行为,因此最好在使用变量之前对其进行初始化。
相关问题
Java ArrayList方法
### Java 中 `ArrayList` 的方法及其文档说明
#### 创建和初始化 `ArrayList`
在 Java 中,`ArrayList` 是一种动态数组实现,允许程序灵活管理集合中的元素数量。创建一个 `ArrayList` 对象非常简单:
```java
import java.util.ArrayList;
// 初始化一个空的 ArrayList
ArrayList<String> list = new ArrayList<>();
```
#### 添加元素到 `ArrayList`
可以使用 `add()` 方法向列表中添加新项。
```java
list.add("Element"); // 将 "Element" 添加到最后面
list.add(0, "First Element"); // 插入指定位置
```
#### 获取特定索引处的元素
通过调用带有索引参数的 `get()` 函数来访问某个具体位置上的数据项。
```java
String elementAtZeroIndex = list.get(0);
System.out.println(elementAtZeroIndex); // 输出第一个元素
```
#### 移除元素
移除可以通过两种方式完成:按对象或按其所在的位置删除。
```java
boolean removedByObject = list.remove("Some Object");
int indexToRemove = 2;
list.remove(indexToRemove);
```
#### 修改现有条目
更新已存在的记录可通过设置新的值给定下标的成员变量达成目的。
```java
if (!list.isEmpty()) {
list.set(0, "New Value At Index Zero");
}
```
#### 查询大小和其他属性
获取当前存储了多少个项目以及判断容器是否为空等操作也很容易实现。
```java
int sizeOfList = list.size();
boolean isEmptyCheck = list.isEmpty();
```
#### 遍历所有项目
遍历整个序列可借助增强型for循环轻松搞定。
```java
for (String item : list) {
System.out.println(item);
}
```
#### 清理全部内容
当不再需要保存任何东西时,可以选择清空这个结构体内的每一个组成部分。
```java
list.clear();
```
以上就是关于如何运用这些基本功能的一些例子[^1]。
Cannot invoke "java.util.ArrayList.size()" because "go" is null
这个错误提示意味着你在一个空的 ArrayList 上调用了 size() 方法。你需要确保 ArrayList 已经初始化了,也就是赋值了数组对象。比如,如果你定义了一个 ArrayList 变量,你需要在使用它之前先实例化它,例如:
```
ArrayList<String> list = new ArrayList<>();
```
然后你就可以使用 ArrayList 上的 size() 方法了,例如:
```
int size = list.size();
```
如果你还是遇到这个错误,可以检查一下你的代码是否在调用 size() 方法之前正确地初始化了 ArrayList。
阅读全文
相关推荐

















