当前位置: 首页 > 知识库问答 >
问题:

JavaHacker地球问题。虽然我以不同的方式得到了解决方案,但我想知道这段代码有什么问题。请帮忙。索引出行错误 [重复]

裴钧
2023-03-14

有一组输入字符串和一组查询字符串。对于每个查询字符串,确定它在输入字符串列表中出现的次数。返回结果数组。

public static List<Integer> matchingStrings(List<String> strings, List<String> queries) {
       List<Integer> s = new ArrayList<Integer>(queries.size());
       for(int i = 0;i<queries.size();i++){
           s.set(i,0);
       }
       for(int i = 0;i < queries.size();i++){
           for(int j = 0; j<strings.size();j++){
               if((strings.get(j)).equals(queries.get(i))){
                   s.set(i,(s.get(i)+1));
               }
           }
       }
       return s;
   }

//线程“main”中出现异常Java . lang . indexoutofboundsexception:在Java . base/JDK . internal . util . preceditions . out of bounds(preceditions . Java:64)在Java . base/JDK . internal . util . preceditions . outofboundscheckindex(preceditions . Java:70)在Java . base/JDK . internal . util . preceditions . checkindex(248)在Java . base/Java . util . objects . check Index(objects

共有1个答案

盖翰池
2023-03-14

让我们举个例子:

List<String> arr = new ArrayList<String>();
        System.out.println(arr.get(0));

这给出了索引 0 超出长度 0 的界限

这意味着,你的数组列表是空的

您的情况也是如此,请检查arraylist是否为空

 类似资料:
  • 我拿不到输出。。有人能帮我得到输出吗 下面给出了程序运行的示例(注意:下面的粗体文本是用户输入的输入): 输入三角形的三条边

  • 我拿不到输出。。有人能帮我得到输出吗 下面给出了程序运行的示例(注意:下面的粗体文本是用户输入的输入): 进入三角形的三个边

  • 其目的是对用户输入的分数进行排序、显示和平均。我还没弄明白。如果你已经解决了这个问题,请帮忙。到目前为止,我已经尝试了这段代码,但它不起作用。 我从这段代码中得到的只是一个编译器错误。有人有什么建议吗?谢谢你。

  • 下面是问题的链接:SPOJ-ACTIV 我想出了这个问题的重现如下: 其中next()查找具有开始时间的活动的索引 这是我的java解决方案,虽然它通过了SPOJ工具包的许多测试用例,但是它确实为一些提供了WA。我的概念/解决方案有什么问题?

  • 这是一个骇人听闻的问题:爱丽丝是一个幼儿园老师。她想给班上的孩子们一些糖果。所有的孩子坐成一行(他们的位置是固定的),每个人根据他(她)在班上的表现有一个评级分数。爱丽丝想给每个孩子至少一颗糖。如果两个孩子挨着坐,那么评分较高的那一个必须得到更多的糖果。爱丽丝想省钱,所以她需要尽量减少给孩子们的糖果总数。 测试数组:n=10,n个元素为[2 4 2 6 1 7 8 9 2 1]。我得到的答案是18

  • 给定一个0和1的数组,我们最多可以将K个值从0更改为1。 返回仅包含1的最长(连续)子数组的长度。 例1: 例2: 注: https://leetcode.com/problems/max-consecutive-ones-iii/ 这是问题链接。在第一个测试用例中,我得到了输出9,但应该是6。我不知道哪里出了问题?