Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.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 ArrayIndexOutofBounds检查大小后出现异常_Java_Android_Arrays - Fatal编程技术网

Java ArrayIndexOutofBounds检查大小后出现异常

Java ArrayIndexOutofBounds检查大小后出现异常,java,android,arrays,Java,Android,Arrays,我从适配器中的用户报告了此错误。我无法复制这个: java.lang.ArrayIndexOutOfBoundsException: length=8; index=8 在这条线上 if (columnas.get(column).getENTR() == 3) 但我不明白,因为我以前检查过if(columnas.size()>column)。如何修复此错误?下面是示例代码 private List<bdcolums> columnas = new ArrayList<bd

我从适配器中的用户报告了此错误。我无法复制这个:

java.lang.ArrayIndexOutOfBoundsException: length=8; index=8
在这条线上

if (columnas.get(column).getENTR() == 3)
但我不明白,因为我以前检查过
if(columnas.size()>column)
。如何修复此错误?下面是示例代码

private List<bdcolums> columnas = new ArrayList<bdcolums>();

 private View getHeader(final int row, final int column, View convertView, final ViewGroup parent) {
    final ViewHolder holder;
    if (convertView == null || convertView != inflater.inflate(R.layout.item_table_header, parent, false)) {
        convertView = inflater.inflate(R.layout.item_table_header, parent, false);
        holder = new ViewHolder();
        holder.header_desc = (TextView) convertView.findViewById(R.id.text2);
        holder.header_nom = (TextView) convertView.findViewById(android.R.id.text1);
        holder.header_img = (ImageView) convertView.findViewById(R.id.dibuheader);
        convertView.setTag(holder);
    } else {
        holder = (ViewHolder) convertView.getTag();
    }
    if (columnas.size() > column) {
        if (columnas.get(column).getENTR() == 3) {
       //do something
        }
    } else {
        //do something
    }
    return convertView;
}
private List columns=new ArrayList();
私有视图getHeader(最终整型行、最终整型列、视图转换视图、最终视图组父视图){
最终持票人;
if(convertView==null | | convertView!=充气机.充气(R.layout.item_table_header,parent,false)){
convertView=充气机。充气(R.layout.item\u table\u标题,父项,false);
holder=新的ViewHolder();
holder.header_desc=(TextView)convertView.findViewById(R.id.text2);
holder.header_nom=(TextView)convertView.findViewById(android.R.id.text1);
holder.header\u img=(ImageView)convertView.findViewById(R.id.dibuheader);
convertView.setTag(支架);
}否则{
holder=(ViewHolder)convertView.getTag();
}
if(columnas.size()>列){
if(columnas.get(column.getENTR()==3){
//做点什么
}
}否则{
//做点什么
}
返回视图;
}
这是因为您的数组(列)被非法地址访问。尝试使用arrayList而不是array。并查看这些问题以获得进一步帮助


希望能有帮助……:)

请发布完整的堆栈跟踪。看起来一切都很好。可能异常发生在
getENTR()
方法中。你能发布更详细的stacktrace吗?你使用的是哪种适配器?这是一个多线程应用程序吗?如果ArrayList是在另一个线程中通过删除一个项目而修改的,恰好在检查之后和访问之前,那么您将得到此异常。请发布您的
getENTR()
方法