Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.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中查找max元素<;浮动>;,在爪哇_Java_Arraylist_Max - Fatal编程技术网

Java 正在尝试在ArrayList中查找max元素<;浮动>;,在爪哇

Java 正在尝试在ArrayList中查找max元素<;浮动>;,在爪哇,java,arraylist,max,Java,Arraylist,Max,在Java中,我有一个带有Float元素的ArrayList,我试图找到具有最大值的元素的位置。 我尝试使用以下代码执行此操作,但无效: Float obj = Collections.max(arraylist); int index=arraylist.indexOf(obj); 问题是,Collections.max() 有没有关于哪里出了问题的想法,以及我如何能以不同的方式做到这一点 更正:问题不在我想的地方,而是在向Arraylist添加元素时。我添加的值是函数的浮点结果。

在Java中,我有一个带有Float元素的ArrayList,我试图找到具有最大值的元素的位置。 我尝试使用以下代码执行此操作,但无效:

 Float obj = Collections.max(arraylist);
    int index=arraylist.indexOf(obj);
问题是,
Collections.max()

有没有关于哪里出了问题的想法,以及我如何能以不同的方式做到这一点


更正:问题不在我想的地方,而是在向Arraylist添加元素时。我添加的值是函数的浮点结果。我在添加函数之前打印函数的结果,然后使用通常的
arraylist.add(value)
code,但是当我要求在添加后打印arraylist的值时,返回一个完全不同的值:/

IndexOf返回此列表中指定元素第一次出现的索引,或者-1,如果此列表不包含元素,并且不是您要查找的最大值

检查此处的文档)

您还必须指定存储在ArrayList上的元素的类型。尝试:

... new ArrayList<Float>() ; .. 
。。。新的ArrayList()。。

希望您添加了以下两个库

import java.util.ArrayList;
import java.util.Collections;
你能试试这个代码吗?而不是保存到浮动对象

Object obj = Collections.max(arrayList);
我找到了,伙计们! 问题是,我不是将函数的结果存储在浮点值中然后使用它,而是在每次需要该值时调用该函数,以节省内存空间。 但是我忘记初始化函数的一个值,所以每次它都给我一个不同的起始值,所以每次调用函数时它都返回不同的结果


非常感谢您的帮助,如果没有你的问题,我可能要花更长的时间才能找到它,这让我想到了真正的问题:)

你得到的结果和预期的结果是什么?创建一个简单的用例,它不起作用,然后发布到这里。
obj
index
有哪些值?声明的类型是什么
arraylist
?可能的重复项事实上,它应该返回
max\u元素的索引,该元素是通过
Collection.max()找到的,但是
Collections.max()确实(或至少应该)返回最大值,根据可比较的
实现,我认为他用int而不是Float来定义ArrayList()。请检查@ALJIMohamed“ArrayList()with int”是什么意思?
ArrayList()
这意味着ArrayList应该存储int。如果你在上面加上浮点数,它将被向下(或向上)取整!类似的是,我确实添加了库。我试图将其更改为Object,但仍然无法正常工作:S