它们之间的区别在哪,有没有啥不好的地方
import java.util.ArrayList;
import java.util.List;
public class Abc {
public static void main(String[] args) {
List list=new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
System.out.println("第一种输出:");
for(Object object:list){
System.out.println(object);
}
System.out.println("第二种输出:");
for(Object object:list){
String str=(String) object;
System.out.println(str);
}
}
}
区别在于,如果list添加进了非字符串类型,第二种输出会对它进行一次字符串的强制转换,虽然可能无法判断异常值,但是可以确保输出值是字符串类型
因为数组里允许插入各种类型的值,第一种的话就可能输出五花八门的类型了
好不好这种可能看你实际需求,就比如list能否添加非字符串类型,或者你取值需要的一定是字符串吗
如果我的回答对你有帮助的话,还希望能给一个采纳呀,非常感谢
看懂了不
只是输出的话没什么区别,Object是String的父类,String的自带方法比Object要多,一般都是用String