当前位置: 首页 > 面试题库 >

遍历可变长度数组

哈和惬
2023-03-14
问题内容

我如何遍历可变长度的Java数组。

我想我会设置一个while循环,但是如何检测到数组末尾。

我想我想要这样的东西[只需要弄清楚如何表示myArray.notEndofArray()]

index = 0;
while(myArray.notEndofArray()){
  system.out.println(myArray(index));
  index++;
}

问题答案:
for(int i = 0; i < array.length; i++)
{
    System.out.println(array[i]);
}

要么

for(String value : array)
{
    System.out.println(value);
}

第二个版本是“ for-each”循环,它适用于数组和Collections。大多数循环可以使用for-
each循环完成,因为您可能并不在乎实际的索引。如果您确实关心实际索引,请使用第一个版本。

为了完整起见,您可以使用以下方式进行while循环:

int index = 0;

while(index < myArray.length)
{
  final String value;

  value = myArray[index];
  System.out.println(value);
  index++;
}

但是,当您知道大小时,应该使用for循环而不是while循环(即使使用可变长度数组,您也知道大小…每次都不同)。



 类似资料:
  • 问题内容: Core Audio具有C API,可将一些数据复制到您提供的内存中。在一种情况下,我需要传递一个指向AudioBufferList的指针,该指针定义为: UInt32标识缓冲区的数量,并且实际缓冲区紧随其后。 我可以成功获得此: 我无法识别(AudioBuffer)语法,但我认为它并不重要- 我认为括号会被忽略,mBuffers只是一个AudioBuffer,由我自己完成指针数学运算

  • 给定一个数组,构建二叉树,并且按层次打印这个二叉树

  • def deep(root): if not root: return print root.data deep(root.left) deep(root.right) if __name__ == '__main__': lookup(tree) deep(tree)

  • 问题内容: 我想知道如何初始化整数数组,使其大小和值在程序执行过程中发生变化,有什么建议吗? 问题答案: 是的:使用ArrayList。 在Java中,“普通”数组是固定大小的。您必须给它们一个尺寸,并且不能扩展或收缩它们。要更改大小,您必须创建一个新数组并复制所需的数据-这效率低下,给您带来痛苦。 幸运的是,有许多内置类可以实现通用的数据结构以及其他有用的工具。您需要检查Java 6 API的完

  • 问题内容: 我有一个带有列的表,其中包含如下所示的字符串。 我需要从第二次出现到字符串结尾获取子字符串,并且您可以看到子字符串的长度不是固定的。第一部分并不总是固定的,它可以改变。到目前为止,我正在使用以下代码来实现它。 如您所见,我采用一个任意大的值作为长度来处理可变长度。有更好的方法吗? 问题答案: 您可以与函数结合使用,找到的最后一次出现,还可以使用从字符串末尾获取指定数量的字符。 SQLF

  • Array类实现了迭代器,可使用迭代器对数组进行遍历,如果是数字索引数组,还可以直接使用for循环进行遍历。 数字索引数组 for(int i = 0; i < array.count(); i++) { php::echo("key=%d, value=%s.\n", i, array[i].toCString()); } 迭代器 for(auto i = array.begin();