【问题标题】:setting the values of arrays in java by using their indexes通过使用它们的索引在java中设置数组的值
【发布时间】:2020-04-26 13:19:58
【问题描述】:

你如何先在java中初始化一个数组,然后使用它们的索引为它们设置值?比如你在java中做了一个数组,然后你想把数组的75号索引的值设置为“七十五”,可以做类似array[75] =“七十五”的事情吗?

String[] array;
array[0] = "zero";
array[1] = "one";
array[2] = "two";

当我尝试下面的代码时,它显示未知类数组。我做错了什么?

String[] array = new String[10];
array[0] = "zero";

【问题讨论】:

  • 首先需要设置数组的大小 String[] array = new String[10];那么你就可以继续做你正在做的事情了。
  • @TimeTrax 当我尝试这个时,当我尝试使用索引设置值时它说未知类数组。
  • 1.去这里onlinegdb.com/online_java_compiler 2.清除所有文本..全选,删除。 3. 粘贴以下代码 =>>>> public class Main{ public static void main(String[] args) { String[] array = new String[10];数组[0] =“零”; System.out.println(array.length); System.out.println(array[0]); } } 4. 你会发现我是对的
  • 如果你想达到 75 或更高,上述方法可能会变得笨拙。您可能想参考geeksforgeeks.org/convert-number-to-words,然后使用循环。

标签: java arrays android-studio indexing


【解决方案1】:

首先,您需要将数组引用指向一个实际的数组对象。

例如,

String[] array = new String[3];

你可以像你正在做的那样初始化内容。

或者你可以在数组创建表达式中初始化它们:

String[] array = new String[] { "zero", "one", "two" };

您也可以在声明中单独使用数组初始化器:

String[] array = { "zero", "one", "two" };

【讨论】:

  • 这会初始化一个大小为3的数组吗?
  • 这两个都将数组初始化为大小 3。第一个这样做是因为 new String[3] 明确要求这样做。第二个是因为初始化列表包含三个元素。
  • 你知道什么时候说的是未知类数组吗?我在安卓工作室做这个。
  • @frosty - 您是否有可能将赋值语句放在您的类主体中而不是方法中?请参阅 stackoverflow.com/questions/28448029/…。如果是这样,一种解决方案是使用上面的数组初始值设定项。
【解决方案2】:

首先,建议不要像这样初始化数组

String[] a;

因为它实际上不是一个数组,你可以得到空指针异常。

我认为您只需从头开始初始化数组。

String[] array = new String[] { "zero", "one", "two", "three", "four" };

【讨论】:

    【解决方案3】:

    我不熟悉 android studio,但您的问题不在数组声明中,您的 jvm 无法识别 String 类。

    【讨论】:

      猜你喜欢
      • 2021-11-24
      • 1970-01-01
      • 2015-07-13
      • 1970-01-01
      • 2022-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-02
      相关资源
      最近更新 更多