java - 简单的Java数组问题

标签 java arrays

Codingbat.com array question

这是一个简单的数组问题,不是为了作业,只是为了明年秋天我参加另一门编程课之前的常识。

给定一个整数数组,如果 6 出现在数组的第一个或最后一个元素中,则返回 true。该数组的长度为 1 或更长。

firstLast6({1, 2, 6}) → true
firstLast6({6, 1, 2, 3}) → true
firstLast6({3, 2, 1}) → false

我遇到的问题是您不应该使用任何循环来遍历数组。如果我不知道输入数据中的整数总数,如何编写以避免索引越界异常?

我的解决方案 --- 它有效,但不是他们正在寻找的答案。

public boolean firstLast6(int[] nums) {
  for (int i=0; i < (nums.length ); i++)
  {

  if (i == 0 && nums[i] == 6)
  { 
  return true;
  }

  else if (i == (nums.length - 1) && nums[i] ==6)
  {

  return true;
  }
  }
  return false;
}

最佳答案

您将使用 length 属性访问最后一个索引:

public boolean firstLast6(int[] nums) {
    if (nums == null || nums.length == 0) {
        return false;
    }

    return nums[0] == 6 || nums[nums.length - 1] == 6;
}

编辑:添加了对 null 或空数组的检查。

关于java - 简单的Java数组问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6006623/

相关文章:

java - 使用 Selenium 选择下拉菜单

java - 使用 SOAP 将 C++ 应用程序连接到 JAVA 网络应用程序

c++ - 找出数组中出现次数最少的数

java - 根据用户输入在数组中对数字进行排序 Java

java - 将文本文件加载到 JtextArea 中

java - 将标签更改为文本框/按钮

arrays - 使用随机数组添加 Java 排序算法

java - 我用 split 制作了一个 char[] 并尝试再次将其变成字符串,但我不知道为什么这不起作用

php - 如何对数组执行自定义排序并保留键

java - poi jar 文件 java.lang.NoSuchMethodError 问题