java - 如何显示数组中元素的位置?

标签 java

我的困境是用户输入一个数字后,然后检查该数字是否在数组中,如果是,我会让他们知道该数字以及该数字的位置在数组中。我将它放在提示用户输入数字的位置,但之后我收到 ArrayIndexOutOfBoundsException 错误。

这是我到目前为止所拥有的:

int [] iGrades = new int [30];

      System.out.print ("Enter the grades, when you're done input (-1) ");
      for (int i=0; i<iGrades.length;i++)
      {
          iGrades [i]= kb.nextInt();
          if (iGrades [i]< 0)
          {
              break;
          }
      }
      System.out.print ("\nEnter a grade to check if it's in the array");
      iVal = kb.nextInt();
      for(int i=0; i<=iGrades.length; ++i)
       {
            if(iVal == (iGrades[i]))
            {
                found = true;
                for(int j=0; j<=iGrades.length; ++j)
                {
                    iGrades[j]=j+1;
                }
                break;
            }

       }

      if (found == true)
      {

         System.out.println(iVal + " is in the array at position ");
      }
      else
      {
         System.out.println(iVal + " is NOT in the array.");
      }
   }   

任何帮助都会很棒。

最佳答案

问题出在你的第二个 for环形。这个

      for(int i=0; i<=iGrades.length; ++i)

更改 <=<

关于java - 如何显示数组中元素的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27020060/

相关文章:

java - 我如何在 java 中获取 gzip 中文件的文件名?

java - 如何扫描类中的自定义注释?

java - LinkedList从头开始,替换一个节点

java - 如何通过 PHP 代码运行 shell 命令?

java - 当我们使用 git merge 或分支来掌握时,重构是否会发生在所有类上

java - NTLMv2 HTTP 身份验证 Java

java - 将收集器 maxBy 与 groupingBy 一起使用时展开可选

java - jdbctemplate使用动态sql返回多行

java - JMeter 中的默认变量和选择列表

java - 如何使用 JPA 或 Hibernate @JoinTable 以及额外的连接条件,例如 SQL => from a join b on a.no = b.no 或 b.no is null