【问题标题】:Java new array value per number每个数字的 Java 新数组值
【发布时间】:2015-04-29 16:09:02
【问题描述】:

我正在编写一个程序(代码如下所示),用户可以在其中输入带有数字的字符串。然后将它们从字符串转换为整数。但我真正想要的是一个新数组,其中每个单独的数字都是一个值。所以如果用户写“15623”我希望数组像 {1, 5, 6, 2, 3} 有人知道怎么做吗?

String getNumbers = textField.getText();                            
String[] ary = getNumbers.split(" ");
int intNumbers = Integer.parseInt(getNumbers);

int iArr[] = {intNumbers};
Arrays.sort(iArr);
for (int number : iArr) {
    textField.setText("" + number);
}

【问题讨论】:

  • getNumbers.split("") 没有空格

标签: java arrays


【解决方案1】:

使用charAt 获取特定字符,使用getNumericValue 将字符转换为数字:

String nums="1235325";
int[]  iArr = new int[nums.length ()];
for (int i = 0; i < nums.length (); i++) {
  iArr[i]=Character.getNumericValue (nums.charAt (i));
}
Arrays.sort (iArr);
System.out.println (Arrays.toString (iArr));

输出:

[1, 2, 2, 3, 3, 5, 5]

【讨论】:

  • 我真的很爱你。非常感谢!千千万万的爱!! :)
【解决方案2】:

你可以的

int iArr[] = new int[numString.length()];
for(int i=0;i<numString.length();i++)
     iArr[i]=Character.getNumericValue(numString.chatAt(i))

【讨论】:

    【解决方案3】:

    您好,如果我理解您的问题,您只需将输入字符串拆分为“”而不是“”。

    String[] ary = getNumbers.split("");//This array will now look like {"1", "5", "6", "2", "3"}
    

    编辑:固定输出外观

    【讨论】:

    • 没有。它看起来像{"1", "5", "6", "2", "3"}。 ;-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-20
    • 1970-01-01
    • 2022-10-06
    • 2016-02-14
    • 2020-02-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多