创建一个数字数组而不循环?

2023-12-31

好的,我正在使用 JavaMail 库,并且我正在尝试获取某些消息号。我想高效地完成它,而不必在某件事上循环两次......无论如何,我对你的问题是:如何创建一个从索引开始的数组x并以索引结束x - 11不循环?


如果你想创建并填充一个数组,你基本上有三个选择:

  1. 显式写出值:int[] nums = new int[] { 0, 1, 2, 3, 4, ... }

  2. 使用某种形式的 for 循环:for (int i = 0; i < 10; i++) { nums[i] = i; }

  3. 递归创建它:



int[] nums = new int[12];
nums = populate(0, x, nums);

private int[] populate(int index, int x, int[] nums) {
    if (nums.length >= index) {
        return nums;
    } else {
        nums[index] = x - index; // x-0 through x-11
        return populate(index+1, x, nums);
    }
}
  

Vanilla Java,没有额外的库和诸如此类的东西,不支持映射函数,该函数允许您指定一个以某种方式自动生成您的值的函数。

不过,我真的不明白为什么你不想使用循环,特别是对于像这样的小事情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

创建一个数字数组而不循环? 的相关文章

随机推荐