繁体   English   中英

将通用ArrayList元素转换为原始类型(长整数)

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM