繁体   English   中英

比较Java中两个不同大小的字符串arraylist

[英]Compare two different size of string arraylist in Java

我有两个大小不同的字符串数组列表。 我需要比较这两个arraylist并获取输出。 但是它给出了一个错误,例如"Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 6, Size: 6" 我需要为该错误做哪些更改。 我的代码是

import java.util.ArrayList;
import java.util.Arrays;

public class TestCompareArrays {

    public static void main(String[] args) {

    ArrayList<String> arr1 = new ArrayList<String>(Arrays.asList("a","b","c","d","e","f"));
    ArrayList<String> arr2=  new ArrayList<String>(Arrays.asList("b","d","f"));

            for(int i = 0; i <= arr1.size(); i++){
                if(arr2.contains(arr1.get(i))){
                     System.out.println("yes");
                }
                     else{
                         System.out.println("No");
                     }}
}}

尝试替换为:

  for(int i = 0; i <= arr1.size(); i++){

使用<代替<=这样的:

  for(int i = 0; i < arr1.size(); i++){

因为ArrayList的大小从0开始到size()-1

使用retain all ,快速准确,高效:

 String orig[] = { "a", "b", "b", "c" };
 String act[] = { "x", "b", "b", "y" };
 List origList = new ArrayList(Arrays.asList(orig));
 List actList = Arrays.asList(act);
 origList.retainAll(actList);
 System.out.println(origList);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM