Java.lang.IndexOutOfBoundException错误 本帖最后由 wc7253027 于 2011-07-13 09:06:55 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是数组的代码:package com.huawei.test;import java.util.ArrayList;import java.util.List;import com.huawei.biz.R;public class dataManager { public static List<Integer> drawableListfp=new ArrayList<Integer>(); public static List<Integer> drawableListht=new ArrayList<Integer>(); public static List<Integer> drawableListmh=new ArrayList<Integer>(); public static List<Integer> drawableListhtt=new ArrayList<Integer>(); public static List<Integer> getDrawableListfp(){ drawableListfp.clear(); drawableListfp.add(R.drawable.fp1); drawableListfp.add(R.drawable.fp2); drawableListfp.add(R.drawable.fp3); drawableListfp.add(R.drawable.fp4); drawableListfp.add(R.drawable.fp5); drawableListfp.add(R.drawable.fp6); drawableListfp.add(R.drawable.fp7); drawableListfp.add(R.drawable.fp8); drawableListfp.add(R.drawable.fp9); drawableListfp.add(R.drawable.fp10); drawableListfp.add(R.drawable.fp11); drawableListfp.add(R.drawable.fp12); drawableListfp.add(R.drawable.fp13); return drawableListfp; } public static List<Integer> getDrawableListht(){ drawableListht.clear(); drawableListht.add(R.drawable.ht1); drawableListht.add(R.drawable.ht2); drawableListht.add(R.drawable.ht3); drawableListht.add(R.drawable.ht4); drawableListht.add(R.drawable.ht5); drawableListht.add(R.drawable.ht6); drawableListht.add(R.drawable.ht7); drawableListht.add(R.drawable.ht8); drawableListht.add(R.drawable.ht9); drawableListht.add(R.drawable.ht10); drawableListht.add(R.drawable.ht11); drawableListht.add(R.drawable.ht12); drawableListht.add(R.drawable.ht13); return drawableListht; } public static List<Integer> getDrawableListmh(){ drawableListmh.clear(); drawableListmh.add(R.drawable.mh1); drawableListmh.add(R.drawable.mh2); drawableListmh.add(R.drawable.mh3); drawableListmh.add(R.drawable.mh4); drawableListmh.add(R.drawable.mh5); drawableListmh.add(R.drawable.mh6); drawableListmh.add(R.drawable.mh7); drawableListmh.add(R.drawable.mh8); drawableListmh.add(R.drawable.mh9); drawableListmh.add(R.drawable.mh10); drawableListmh.add(R.drawable.mh11); drawableListmh.add(R.drawable.mh12); drawableListmh.add(R.drawable.mh13); return drawableListmh; } public static List<Integer> getDrawableListhtt(){ drawableListhtt.clear(); drawableListhtt.add(R.drawable.htt1); drawableListhtt.add(R.drawable.htt2); drawableListhtt.add(R.drawable.htt3); drawableListhtt.add(R.drawable.htt4); drawableListhtt.add(R.drawable.htt5); drawableListhtt.add(R.drawable.htt6); drawableListhtt.add(R.drawable.htt7); drawableListhtt.add(R.drawable.htt8); drawableListhtt.add(R.drawable.htt9); drawableListhtt.add(R.drawable.htt10); drawableListhtt.add(R.drawable.htt11); drawableListhtt.add(R.drawable.htt12); drawableListhtt.add(R.drawable.htt13); return drawableListhtt; }} 兄弟,你也没说dataManager是什么?哪行报的错?越界肯定是某个List哦。 List<Integer> newdrawableListfp=dataManager.getDrawableListfp();List<Integer> newdrawableListht=dataManager.getDrawableListht();List<Integer> newdrawableListhtt=dataManager.getDrawableListhtt();List<Integer> newdrawableListmh=dataManager.getDrawableListmh(); Log.d(TAG,String.valueOf(j)); if(j<14){ Log.d(TAG,newdrawableListfp.get(j).toString());//数组长度13,下标0-12,j=13时,get(j)越界,下面都是这样.... return newdrawableListfp.get(j); Log.d(TAG,String.valueOf(j)); if(j<14){ Log.d(TAG,newdrawableListfp.get(j).toString()); return newdrawableListfp.get(j); }else if(j>13 && j<27){ Log.d(TAG,newdrawableListht.get(j).toString()); return newdrawableListht.get(j-13); }else if(j>26 && j<40){ Log.d(TAG,newdrawableListhtt.get(j).toString()); return newdrawableListhtt.get(j-26); }else if(j>39 && j<53){ Log.d(TAG,newdrawableListmh.get(j).toString()); return newdrawableListmh.get(j-39); dataManager就是我的那个所有数组的类啊第二条回复里面的还是找不到哪里越界了。。汗 Log.d(TAG,newdrawableListht.get(j).toString());越界了 if(j<14){ Log.d(TAG,newdrawableListfp.get(j-1).toString()); return newdrawableListfp.get(j-1); }else if(j>13 && j<27){ Log.d(TAG,newdrawableListht.get(j-14).toString()); return newdrawableListht.get(j-14); }else if(j>26 && j<40){ Log.d(TAG,newdrawableListhtt.get(j-27).toString()); return newdrawableListhtt.get(j-27); }else if(j>39 && j<53){ Log.d(TAG,newdrawableListmh.get(j-40).toString()); return newdrawableListmh.get(j-40); } 关于System.exit(0)和android:clearTaskOnLaunch的问题 如何实现一个计时器 Android如何通过USB和PC进行TCP通讯 背景音乐 Android初学者求助。。。应该是很简单的问题 一个空指针错误,但是找不到出错的原因。 ANDROID毕业设计 数据库错误--请各位高手帮帮忙 求助,Arm板移植Android系统 用proguard混淆的Android代码 主activity 跳转子到子activity 但是不执行子activity 的onCreate方法 android GridView菜单item 点击变换图片问题
package com.huawei.test;import java.util.ArrayList;
import java.util.List;import com.huawei.biz.R;public class dataManager {
public static List<Integer> drawableListfp=new ArrayList<Integer>();
public static List<Integer> drawableListht=new ArrayList<Integer>();
public static List<Integer> drawableListmh=new ArrayList<Integer>();
public static List<Integer> drawableListhtt=new ArrayList<Integer>();
public static List<Integer> getDrawableListfp(){
drawableListfp.clear();
drawableListfp.add(R.drawable.fp1);
drawableListfp.add(R.drawable.fp2);
drawableListfp.add(R.drawable.fp3);
drawableListfp.add(R.drawable.fp4);
drawableListfp.add(R.drawable.fp5);
drawableListfp.add(R.drawable.fp6);
drawableListfp.add(R.drawable.fp7);
drawableListfp.add(R.drawable.fp8);
drawableListfp.add(R.drawable.fp9);
drawableListfp.add(R.drawable.fp10);
drawableListfp.add(R.drawable.fp11);
drawableListfp.add(R.drawable.fp12);
drawableListfp.add(R.drawable.fp13);
return drawableListfp;
}
public static List<Integer> getDrawableListht(){
drawableListht.clear();
drawableListht.add(R.drawable.ht1);
drawableListht.add(R.drawable.ht2);
drawableListht.add(R.drawable.ht3);
drawableListht.add(R.drawable.ht4);
drawableListht.add(R.drawable.ht5);
drawableListht.add(R.drawable.ht6);
drawableListht.add(R.drawable.ht7);
drawableListht.add(R.drawable.ht8);
drawableListht.add(R.drawable.ht9);
drawableListht.add(R.drawable.ht10);
drawableListht.add(R.drawable.ht11);
drawableListht.add(R.drawable.ht12);
drawableListht.add(R.drawable.ht13);
return drawableListht;
}
public static List<Integer> getDrawableListmh(){
drawableListmh.clear();
drawableListmh.add(R.drawable.mh1);
drawableListmh.add(R.drawable.mh2);
drawableListmh.add(R.drawable.mh3);
drawableListmh.add(R.drawable.mh4);
drawableListmh.add(R.drawable.mh5);
drawableListmh.add(R.drawable.mh6);
drawableListmh.add(R.drawable.mh7);
drawableListmh.add(R.drawable.mh8);
drawableListmh.add(R.drawable.mh9);
drawableListmh.add(R.drawable.mh10);
drawableListmh.add(R.drawable.mh11);
drawableListmh.add(R.drawable.mh12);
drawableListmh.add(R.drawable.mh13);
return drawableListmh;
}
public static List<Integer> getDrawableListhtt(){
drawableListhtt.clear();
drawableListhtt.add(R.drawable.htt1);
drawableListhtt.add(R.drawable.htt2);
drawableListhtt.add(R.drawable.htt3);
drawableListhtt.add(R.drawable.htt4);
drawableListhtt.add(R.drawable.htt5);
drawableListhtt.add(R.drawable.htt6);
drawableListhtt.add(R.drawable.htt7);
drawableListhtt.add(R.drawable.htt8);
drawableListhtt.add(R.drawable.htt9);
drawableListhtt.add(R.drawable.htt10);
drawableListhtt.add(R.drawable.htt11);
drawableListhtt.add(R.drawable.htt12);
drawableListhtt.add(R.drawable.htt13);
return drawableListhtt;
}
}
List<Integer> newdrawableListfp=dataManager.getDrawableListfp();
List<Integer> newdrawableListht=dataManager.getDrawableListht();
List<Integer> newdrawableListhtt=dataManager.getDrawableListhtt();
List<Integer> newdrawableListmh=dataManager.getDrawableListmh();
if(j<14){
Log.d(TAG,newdrawableListfp.get(j).toString());//数组长度13,下标0-12,j=13时,get(j)越界,下面都是这样....
return newdrawableListfp.get(j); Log.d(TAG,String.valueOf(j));
if(j<14){
Log.d(TAG,newdrawableListfp.get(j).toString());
return newdrawableListfp.get(j);
}else if(j>13 && j<27){
Log.d(TAG,newdrawableListht.get(j).toString());
return newdrawableListht.get(j-13);
}else if(j>26 && j<40){
Log.d(TAG,newdrawableListhtt.get(j).toString());
return newdrawableListhtt.get(j-26);
}else if(j>39 && j<53){
Log.d(TAG,newdrawableListmh.get(j).toString());
return newdrawableListmh.get(j-39);
dataManager就是我的那个所有数组的类啊第二条回复里面的还是找不到哪里越界了。。汗
Log.d(TAG,newdrawableListfp.get(j-1).toString());
return newdrawableListfp.get(j-1);
}else if(j>13 && j<27){
Log.d(TAG,newdrawableListht.get(j-14).toString());
return newdrawableListht.get(j-14);
}else if(j>26 && j<40){
Log.d(TAG,newdrawableListhtt.get(j-27).toString());
return newdrawableListhtt.get(j-27);
}else if(j>39 && j<53){
Log.d(TAG,newdrawableListmh.get(j-40).toString());
return newdrawableListmh.get(j-40);
}