Drekel Ответов: 2

Введите запятую в строку чисел с обратной стороны


Я пытаюсь перевернуть строку чисел и ввести запятую без класса числового формата.

Когда вводится число, подобное 1000, выход будет следующим:

0,0,0,1

Вместо

000,1

Что я уже пробовал:

String num=JOptionPane.showInputDialog("enter number");
    Int length=num.length()-1;
    String res="";
    Char ch;

    //For numbers with thousands
    If(length<=6){
       for(int k=length; k>=0; k--){
              ch=num.chartAt(k);
              res+=ch;
              if(ch==num.chartAt(2)){
                    res+=",";
              }
        }
    }
    System.out.println(res);

Kenneth Haugland

https://stackoverflow.com/questions/12678781/reversing-an-array-in-java

CPallini

Непонятно, чего вы пытаетесь достичь. Не могли бы вы привести пример с вводом, ожидаемым выходом и наблюдаемым выходом (ouy действительно сделал это, но не ясно, по крайней мере, на мой взгляд)?

Drekel

Ожидаемый результат должен быть 000,1, но я получаю 0,0,0,1

2 Ответов

Рейтинг:
2

CPallini

Так и должно быть

String num=JOptionPane.showInputDialog("enter number");
    int length=num.length()-1;
    String res="";
    char ch;

    //For numbers with thousands
    if(length<=6){
       for(int k=length; k>=0; k--){
              ch=num.charAt(k);
              res+=ch;
              if(k==1)
                    res+=",";
        }
    }
    System.out.println(res);


Рейтинг:
16

Peter Leow

Попробовать это:

int integer = 1000;
String string = Integer.toString(integer);
String reverseString = new StringBuffer(string).reverse().toString();
String [] splitArray = reverseString.split("");
String finalResult = String.join(",", splitArray);
System.out.println(finalResult);


Mehdi Gholam

Мои 5!

Peter Leow

Спасибо, Мехди голам.