gpt4 book ai didi

java - PHP在Java中的range函数

转载 作者:可可西里 更新时间:2023-10-31 22:07:36 25 4
gpt4 key购买 nike

PHP 的范围函数在 php 中是这样工作的:

$leap_years = range(1900, 2000, 4);

创建类似 1900, 1904, 1908, ... 的数组Java 中有这样简单的东西吗?

最佳答案

没有为此内置任何东西,但实现像不可变 Iterable<Long> 这样的范围相对简单。 (或 Integer 或其他)。只需创建自定义 Iterator从起始值开始,然后每次调用 next() 时递增直到你通过最终值。您必须决定如何以及是否要处理从高到低的迭代等,但这并不难。您也可以将其作为 List 的不可修改的实现来执行此操作其中每个索引的值都是按需计算的 ( start + index * increment )。

虽然您的问题是指基于范围创建“数组”,但通常不需要包含整个范围内数据的数组,特别是如果您只想遍历范围内的数字。如果这就是您想要的,您最终将遍历 两次 范围内的数字以创建一个数组或 List然后阅读它。使用我所描述的惰性范围迭代器没有这个缺点。此外,惰性迭代器可以很容易地复制到 List 中。如果您确实希望将所有值直接存储在内存中。与构建数组相比,它的唯一缺点是一些自动装箱开销。

关于java - PHP在Java中的range函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4026547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com