Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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或List_Java_List_Methods_Arraylist_Parameters - Fatal编程技术网

Java 在方法参数列表中使用ArrayList或List

Java 在方法参数列表中使用ArrayList或List,java,list,methods,arraylist,parameters,Java,List,Methods,Arraylist,Parameters,您好,我想知道使用list或arrayList作为方法参数是否更好 比如说- public static void calculate(List<T> list) {} publicstaticvoidcalculate(List){ 或 publicstaticvoidcalculate(arraylistlist){ 我在想,最好使用列表,因为它为您提供了更多的选项来使用链接列表或其他什么。。。但如果我错了,你能告诉我为什么ArrayList更好或者为什么List更好吗 谢

您好,我想知道使用list或arrayList作为方法参数是否更好

比如说-

public static void calculate(List<T> list) {}
publicstaticvoidcalculate(List){

publicstaticvoidcalculate(arraylistlist){
我在想,最好使用列表,因为它为您提供了更多的选项来使用链接列表或其他什么。。。但如果我错了,你能告诉我为什么ArrayList更好或者为什么List更好吗


谢谢

代码到接口,代码到接口,代码到接口


如果有人想使用您的API,但传递了不同种类的列表,该怎么办?甚至不是一个列表,而是一个集合?使用API所需的最通用的接口

您的方法应该接受该方法有意义的任何参数

如果您的方法适用于任何
列表
,则参数的类型应为
列表

如果您的方法不需要按索引访问项,那么最好允许该方法接受
集合
Iterable

如果您的方法仅适用于数字列表,则参数的类型应为
List
,但应仔细记录需求

public static void calculate(ArrayList<T> list) {}