访问arraylist中的元素时出错

时间:2012-02-26 04:02:31

标签: java arraylist comparator

public  void dataAnalytics()
{
  double sum=0;  
  double i=0;
  double minage=20;
  double maxage=20;

    System.out.println("dataAnalytics for the Rural region");

    for (Record ee :RList)
    {
      sum=sum+Double.valueOf(ee.getIncome());
      i++;
     }

     ageComparator sc = new ageComparator();
     Collections.sort(RList, sc);

     maxage = (RList[0]).getAge();
     minage = (RList[ records.length - 1]).getAge();


     System.out.println("Average income for the Rural region is : $"+sum/i);
     System.out.println("Min age  for the Rural region is : "+minage);
     System.out.println("Max age for the Rural region is : "+maxage);

}

我正在尝试访问数组的第一个对象中的变量以及arrayList的最后一个对象,它将从arraylist中获取最小年龄和最大年龄。这行给了我eror ::

maxage = (RList[0]).getAge();
minage = (RList[ records.length - 1]).getAge(); 

任何想法/

2 个答案:

答案 0 :(得分:2)

你在这里使用两个不同的变量。如果你想要RList中的最后一个元素,你应该使用它的长度。另外,使用get而不是数组语法。

minage = RList.get(RList.size() - 1).getAge();

修改:size()而非length

答案 1 :(得分:2)

数组列表未使用方括号进行索引,但使用getter,请尝试:

RList.get(0).getAge();
Rlist.get(RList.size()-1).getAge();

详情请见此处。 http://docs.oracle.com/javase/1.4.2/docs/api/java/util/ArrayList.html

要使用数组语法,您可以使用

Rlist.toArray()[0];