You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JDK16环境下如何生成1到x的整数数组并计算元素立方值存储

Java实现1到x整数数组生成及立方计算方案

完整可运行代码

import java.util.Scanner;
import java.util.stream.IntStream;

public class CubeNums {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入x的值:");
        int x = scan.nextInt();
        scan.close();
        
        // 等效于Python range(1, x+1),直接生成int[]数组
        int[] numRange = IntStream.rangeClosed(1, x).toArray();
        int[] cubeResult = new int[x];
        
        // 遍历计算立方
        for (int i = 0; i < numRange.length; i++) {
            // 直接用三次乘法避免Math.pow的类型转换和精度问题
            cubeResult[i] = numRange[i] * numRange[i] * numRange[i];
        }
        
        // 可删除以下输出代码,此处用于验证结果
        for (int res : cubeResult) {
            System.out.print(res + " ");
        }
    }
}

核心实现说明

  • 你需要的Python range(1, x+1) 等效于Java的IntStream.rangeClosed(1, x),rangeClosed为左闭右闭规则,会包含首尾两个边界值,直接调用toArray()方法即可直接得到int[]类型数组,不需要装箱转集合再做强制类型转换,避免类型报错
  • 原代码存在两处明显语法问题:Java中没有小写list类型,集合类型是java.util.List且需要指定泛型;for循环语法错误,原生数组遍历不需要在括号内初始化数组
  • 如果不需要单独存储1到x的整数数组,可以直接简化写法,省略中间数组的内存开销:
int[] cubeResult = new int[x];
for (int i = 0; i < x; i++) {
    int current = i + 1;
    cubeResult[i] = current * current * current;
}

内容的提问来源于stack exchange,提问作者Tekkerito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 10:54:04