[英]Cast a generic ArrayList element into a primitive type (long)
我想写一个面对带有长数字的通用ArrayList元素的方法。 我知道该数组仅包含Long值,因此不需要检查此值。 这是我的方法:
searchSum(ArrayList <T> array, long n);
我需要做的对抗是:
array.get(index)==n
您不能将列表强制转换为基元。 Java列表包含对象,而基元不是对象。 但是,根据您要执行的操作,我很确定有一种简单的方法可以实现它。 不幸的是,从您的问题中我很难理解目标是什么。
如果要查找列表中是否包含元素,可以使用:
array.indexOf(new Long(n));
它将告诉您该元素的第一个出现次数的索引。
如果只想看看它是否在那里,可以使用array.contains(new Long(n));
如果要对所有元素求和(因为您的方法称为searchSum),则可以执行以下操作:
searchSum(ArrayList <T> array, long n){
for (Long element: array){
if(Long.valueOf(n).equals(element)){
.... do something here...
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.