【问题标题】:Why int[][] cannot be converted to int?为什么 int[][] 不能转换为 int?
【发布时间】:2019-09-21 16:52:23
【问题描述】:

这个二维数组有什么用? :\

final private int jawel[] = {1, 2, 3, 4, 5,};
final private int jawel_lvlenchdata[][] = {{0,  0}, ..., {1673543,  3546345},};

int lvl = 2;

for(int i = 0; i<=jawel.length-1; i++)
{
    int jawel = jawel[i];

    if(jawel==1)
    {
      int ench = jawel_lvlenchdata[lvl][0];
    }
}

尝试转换时:int ench = jawel_lvlenchdata[lvl][0]; 总是得到lvl insted 数组值:'|

【问题讨论】:

  • lvl 是什么?你遇到了什么错误?
  • 错误:int[][] 不能转换为 int :) lvl - 它是 int 值,我用它来访问数组的索引
  • 请发布您的循环代码或您访问此数组的方式。了解您的问题会有所帮助
  • 现在您的代码无法编译,因为if(jawel) 您正在使用一个 int,就好像它是一个布尔值
  • 你的编辑很奇怪,它们只会让你的代码变得更糟。现在int jawel = jawel[i]; 不会编译。您为什么不发布您真正拥有的代码,或者如果您不能这样做(秘密代码或其他),然后在发布之前在 IDE 中测试您的最小示例在这里。在代码中添加其他不相关的问题只会分散您对问题的注意力。

标签: java arrays


【解决方案1】:

刚刚修改了您的代码及其工作。

    public class Lvl {
    public static void main(String[] args)
    {
    final int jawel[] = {1, 2, 3, 4, 5,};
    final  int jawel_lvlenchdata[][] = {{0,  0},{1,2}, {1673543,  3546345}};
    int ench=0;

    int lvl = 2;

    for(int i = 0; i<=jawel.length-1; i++)
    {
        int jawel1 = jawel[i];

        if(jawel1==1)
        {
            ench = jawel_lvlenchdata[lvl][0];
        }
    }
    System.out.println(ench);
}

}

【讨论】:

    猜你喜欢
    • 2013-09-22
    • 2012-10-17
    • 2023-03-09
    • 2014-06-04
    • 2018-02-05
    • 1970-01-01
    • 1970-01-01
    • 2012-07-18
    • 1970-01-01
    相关资源
    最近更新 更多