Как разграничить целые числа в Java? - PullRequest
1 голос
/ 09 сентября 2011

У меня есть целочисленное значение из командной строки. Это как 12345 или 2343455435 без каких-либо символов-разделителей. Как я могу получить отдельные части этого целого числа, скажем, как для 12345, я хочу что-то вроде 1, 2, 3, 4 и 5.

Ответы [ 4 ]

2 голосов
/ 09 сентября 2011

вы можете попробовать что-то вроде этого:

String numberString = "123456789";
for(byte numberByte:numberString.getBytes()){
    int number = numberByte - '0';
    System.out.println(number);
}
0 голосов
/ 09 сентября 2011

Просто переберите все широты целого числа и добавьте запятую, если необходимо. Примерно так:

public static void main(String[] args) {
        int a = 123456;

        String s = Integer.toString(a);
        for (int i = 0; i < s.length() - 1; i++) {
            System.out.print(s.charAt(i) + ",");
        }
        System.out.println(s.charAt(s.length() - 1));
    }
0 голосов
/ 09 сентября 2011

Вы можете использовать StringTokenizer для получения строки, основанной на определенных токенах, или просто подстроку String (используйте Integer.toString (yourInteger)) *

int start = 1;
int end = 4;
String substr = "aString".substring(start, end);
0 голосов
/ 09 сентября 2011
String[] pieces = Integer.toString(myInt).split("[\\d]");
Integer [] numbers = new Integer[pieces.length];
Integer counter = 0;
for (String n : pieces)
    numbers[counter++] = Integer.parseInt(n);

Это при условии, что это целое число.В противном случае:

String[] pieces = myNumString.split("[\\d]");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...