【问题标题】:Array[] - Can't get the value in Array[] C# "cannot implicitly convert type object to int"Array[] - 无法获取 Array[] C# 中的值“无法将类型对象隐式转换为 int”
【发布时间】:2016-05-29 11:19:07
【问题描述】:

示例:

Array[] hasil = new Array[1];
hasil[0] = new int[1];
hasil[0].SetValue(99, 0);
int xx = hasil[0].GetValue(0);

为什么我不能得到 hasil[0].GetValue(0) 它说“不能将类型对象隐式转换为 int”

【问题讨论】:

  • 您是否有充分的理由使用带有int[]Array[] 而不是直接使用int[][]
  • 因为有时数据并不总是int[] 和 n 参数

标签: c# arrays object


【解决方案1】:

GetValue 方法返回object 类型,因此您必须将其显式转换为int

这样

int xx = (int)hasil[0].GetValue(0);

【讨论】:

  • 额外信息:在 Array 类中你可以找到:'public object GetValue(int index);'所以正如Pawan 所说,GetValue 方法的返回类型是对象。
  • 欢迎您!如果它适合您,请点击复选标记将答案标记为正确。
【解决方案2】:

发挥你的价值:

(int)hasil[0].GetValue(0);

当您的编译器说它不能隐式转换时,您必须明确地进行。然后添加演员表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-14
    • 2020-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-04
    相关资源
    最近更新 更多