Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ArrayList如何在这个程序中打印没有任何循环的元素?_Java_Arraylist - Fatal编程技术网

Java ArrayList如何在这个程序中打印没有任何循环的元素?

Java ArrayList如何在这个程序中打印没有任何循环的元素?,java,arraylist,Java,Arraylist,下面的程序如何在不使用任何循环的情况下打印ArrayList中包含的元素 import java.util.*; class Abc{ public static void main(String args[]){ ArrayList<String> al=new ArrayList<String>(); al.add("Ravi"); al.add("Vijay"); al.add("Ravi"); al.add("A

下面的程序如何在不使用任何循环的情况下打印ArrayList中包含的元素

import java.util.*;  

class Abc{  
 public static void main(String args[]){  
  ArrayList<String> al=new ArrayList<String>();  
  al.add("Ravi");  
  al.add("Vijay");  
  al.add("Ravi");  
  al.add("Ajay");  

    System.out.println(al);  
 }  
}  
import java.util.*;
类Abc{
公共静态void main(字符串args[]){
ArrayList al=新的ArrayList();
al.添加(“Ravi”);
al.添加(“Vijay”);
al.添加(“Ravi”);
al.添加(“Ajay”);
系统输出打印项次(al);
}  
}  

输出:[Ravi,Vijay,Ravi,Ajay]

ArrayList
本身没有
toString()方法。它扩展了
AbstractList
,inturn扩展了
AbstractCollection
,后者定义了实际的方法

来自java文档:

托斯特林

public String toString()
返回此集合的字符串表示形式。弦 表示由集合中集合元素的列表组成 它们由其迭代器返回的顺序,用方括号括起来 ("[]"). 相邻元素由字符“,”(逗号)分隔 和空间)。元素被转换为字符串,如 String.valueOf(对象)


ArrayList
本身没有
toString()
方法。它扩展了
AbstractList
,inturn扩展了
AbstractCollection
,后者定义了实际的方法

来自java文档:

托斯特林

public String toString()
返回此集合的字符串表示形式。弦 表示由集合中集合元素的列表组成 它们由其迭代器返回的顺序,用方括号括起来 ("[]"). 相邻元素由字符“,”(逗号)分隔 和空间)。元素被转换为字符串,如 String.valueOf(对象)

想想这句话:

System.out.println(al);  
作为真正的存在

System.out.println(al.toString());  
toString方法继承自AbstractCollection

如果您对AbstractCollection的toString方法背后发生的事情感兴趣

链接:

想想这句话:

System.out.println(al);  
作为真正的存在

System.out.println(al.toString());  
toString方法继承自AbstractCollection

如果您对AbstractCollection的toString方法背后发生的事情感兴趣


link:

它使用循环,但不是在显示的代码中,而是在
toString()
方法中,
ArrayList
继承自它的祖先类之一的
AbstractCollection

无论何时将对象传递给
print()
println()
,实际发生的是
print()
调用
String.valueOf()
将其传递给该对象

反过来,如果传递的对象不为null,则调用对象
s
toString`方法

AbstractCollection
有一个
toString
方法,该方法依赖于迭代和调用它所表示的集合中每个项的
toString
方法


因此这里有一个循环,但它隐藏在一个调用方法的方法中。

它使用的是一个循环,但不是在您显示的代码中,而是在
toString()
方法中,
ArrayList
继承自它的祖先类之一的
AbstractCollection

无论何时将对象传递给
print()
println()
,实际发生的是
print()
调用
String.valueOf()
将其传递给该对象

反过来,如果传递的对象不为null,则调用对象
s
toString`方法

AbstractCollection
有一个
toString
方法,该方法依赖于迭代和调用它所表示的集合中每个项的
toString
方法


所以这里有一个循环,但它隐藏在一个调用方法的方法中。

因为ArrayList是用Java编写的,它有自己的实现。这就是为什么当您使用toString()时,它会打印您的元素

但是,如果您尝试将toString()与数组一起使用,那么它将不起作用。 因为数组是语言规范的一部分


希望这能帮助您:)

因为ArrayList是用Java编写的,它有自己的实现。这就是为什么当您使用toString()时,它会打印您的元素

但是,如果您尝试将toString()与数组一起使用,那么它将不起作用。 因为数组是语言规范的一部分


希望这对您有所帮助:)

您正在打印arraylist的对象。它打印数组列表中的所有元素
ArrayList
继承了
toString()
方法,其中包含
AbstractCollection
中的一个循环。在不进行迭代的情况下,您如何知道列表中的内容?@TheLostMind使用迭代器和循环;)@在我查找它的十秒钟内,你抓到了我。你正在打印arraylist的对象。它打印数组列表中的所有元素
ArrayList
继承了
toString()
方法,其中包含
AbstractCollection
中的一个循环。在不进行迭代的情况下,您如何知道列表中的内容?@TheLostMind使用迭代器和循环;)@在我查资料的十秒钟内,你抓到了我。