我需要比较 2 个向量 JAVA 的元素



我需要比较 2 个向量的元素,但它不断抛出异常。请帮忙,我想知道我是否做了错误的比较,因为向量使用方法。

 for (int i=0; i <= vect.size(); i++)
          {
              if (i >0 && i <= vect.size())
              {     
                if( vect.get(i) == vect.get(i--) ) //EXCEPTION HERE
                {
                     vect2.add(vect.get(i)+ "");
                }else{vect2.add(vect.get(i++));}
              }                  
          }

永远不要更改for-loopi的值!

i--替换为i-1i++替换为i+1,并根据i调整条件以检查正确的值范围。

第一个问题:

for (int i=0; i <= vect.size(); i++)
                 ↑

当您将其更改为<时会出现第二个问题,因为您仍然有 vect.get(i++) .

您需要小心索引,因为数组是从零开始的,并且Vector内部由数组备份,索引在 [0, size-1] 之间运行。

相关内容

  • 没有找到相关文章

最新更新