Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.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 错误:使用ANT脚本时类型不兼容_Java_Arraylist_Collections - Fatal编程技术网

Java 错误:使用ANT脚本时类型不兼容

Java 错误:使用ANT脚本时类型不兼容,java,arraylist,collections,Java,Arraylist,Collections,我在使用ant脚本编译java代码时遇到以下错误 [javac] D:\MySapce\Proj001\src\com\\process\ReportsProcess.java:2081: error: incompatible types [javac] Integer i = Collections.max(arrayList); [javac] ^ [javac] required: Integer

我在使用ant脚本编译java代码时遇到以下错误

[javac] D:\MySapce\Proj001\src\com\\process\ReportsProcess.java:2081: error: incompatible types
[javac]         Integer i = Collections.max(arrayList);
[javac]                                    ^
[javac]   required: Integer
[javac]   found:    Object
我怎样才能解决这个问题

错误代码部分:

if(series1!=null && series1.getData().size()>0 ){

    ArrayList arrayList = new ArrayList (Arrays.asList( series1.getData().values().toArray()));

    Integer i = Collections.max(arrayList);
    series1MaxValue = i;
}

您使用的是原始类型的
ArrayList

ArrayList arrayList = new ArrayList(...);
编译器无法推断这些元素的类型;实际上,您可以将任何内容以及
Integer
s放入列表中

添加将放入列表的元素类型:

ArrayList<Integer> arrayList = new ArrayList<>(...);
ArrayList ArrayList=新的ArrayList(…);

另外,有关不应使用原始类型的详细说明,请参阅《有效Java第二版》第23项(“在新代码中不要使用原始类型”)。

您使用的是原始类型的
ArrayList

ArrayList arrayList = new ArrayList(...);
编译器无法推断这些元素的类型;实际上,您可以将任何内容以及
Integer
s放入列表中

添加将放入列表的元素类型:

ArrayList<Integer> arrayList = new ArrayList<>(...);
ArrayList ArrayList=新的ArrayList(…);

另外,请参阅《有效Java第二版》第23项(“在新代码中不要使用原始类型”),以了解不应使用原始类型的详细说明。

作为对象类型的
arrayList的类型是什么。
。。需要
列表
。@Satya
集合。max
不需要
整数
。错误消息指的是返回类型,而不是参数。@Satya:返回类型是
T
,这意味着如果OP要分配给
整数
变量,它实际上需要是
集合
参数。这似乎与Ant无关,真的吗?我希望在从命令行或IDE中编译时会出现相同的行为。
arrayList
的类型是什么。。需要
列表
。@Satya
集合。max
不需要
整数
。错误消息指的是返回类型,而不是参数。@Satya:返回类型是
T
,这意味着如果OP要分配给
整数
变量,它实际上需要是
集合
参数。这似乎与Ant无关,真的-在从命令行或IDE中编译时,我期望有相同的行为。将ArrayList更改为整数后,我无法将上述值传递给它的显示错误。将ArrayList更改为整数后,我无法将上述值传递给它的显示错误。