gpt4 book ai didi

java - Arraylist 检查越界索引会导致崩溃

转载 作者:行者123 更新时间:2023-12-01 08:00:26 25 4
gpt4 key购买 nike

所以我有这段代码,它迭代 ArrayList 并将其内容添加到 Imageview。我正在检查 ArrayList 在某个索引处是否为空,以阻止它处理代码,但问题是每当检查条件时它就会崩溃,即这个 picturePathResults.get(i) != null 给我一个越界异常。当 ArrayList 中有一个元素时,通常会发生这种情况,它会循环遍历第一个也是唯一的元素,然后在第二次循环期间检查时崩溃。我不明白为什么当条件应该阻止这种情况发生时它会崩溃。

  for(int i=0; i < allEDs.size(); i++){ 
LinearLayout singleOptionContainer =new LinearLayout(this.getApplicationContext());
ETResults[i] = allEDs.get(i);
if(picturePathResults.size() != 0 ){
if(picturePathResults.get(i) != null){
picturePathResult = picturePathResults.get(i);
imagesContainer = new ImageView(QuestionCollector.this);
imagesContainer.setId(imageViewTemplateID);
imagesContainer.setBottom(editTextTemplateID);
imagesContainer.setLayoutParams(imageParams);
image = BitmapFactory.decodeFile(picturePathResult);
scaledBitmap = scaleImage(image, 330, 330, 330, true);
imagesContainer.setImageBitmap(scaledBitmap);
singleOptionContainer.addView(imagesContainer);
}else{
return;
}
}
}

最佳答案

检查picturePathResults中是否有一些元素 - 然后获取第i元素。

替换 if(picturePathResults.size() != 0 ){

if(picturePathResults.size() > i ){

这应该停止尝试获取不存在的索引

关于java - Arraylist 检查越界索引会导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25743412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com