1) 编写一个类Task11_3,创建ArrayList集合对象,并指定集合只能存储String类型的元素 2) 向集合中添加元素,其中有一个Integer类型的元素 3) 遍历集合中的元素,观察结果是否报错,如果有错请改进。
时间: 2024-02-22 20:55:29 浏览: 61
好的,让我来回答您的问题:
1)以下是Task11_3类的代码,其中使用了泛型来指定集合只能存储String类型的元素:
```java
import java.util.ArrayList;
public class Task11_3 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("hello");
list.add("world");
// list.add(123); // 这里添加了一个非String类型的元素,会在编译时报错
for (String str : list) {
System.out.println(str);
}
}
}
```
2)如果向集合中添加了一个非String类型的元素,例如Integer类型的元素,会在编译时报错。修改后的代码如下:
```java
import java.util.ArrayList;
public class Task11_3 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("hello");
list.add("world");
// list.add(123); // 这里添加了一个非String类型的元素,会在编译时报错
for (String str : list) {
System.out.println(str);
}
}
}
```
3)遍历集合中的元素不会出现问题,因为在添加元素时已经限制了集合只能存储String类型的元素。如果添加了非String类型的元素,会在编译时就报错,避免了运行时出现错误。
阅读全文