Java советы (преобразование строки в массив)

Там. Я столкнулся с небольшой проблемой при программировании на Java

** Может ли кто-нибудь дать мне подсказку, какой метод использовать для того, чтобы

string= "23578893762467290465" convert to array y= [2,3,5,7]....??** 

Я имею в виду, что, например, у [0]=2, у [1]=3, у [2]=5....

заранее спасибо

4 ответа

Преобразовать строку в целочисленный массив.

String string= "23578893762467290465";
int[] intArray = new int[string.length()];
for(int i = 0; i<string.length(); i++){
    intArray[i] = Integer.parseInt(String.valueOf(string.charAt(i)));
}
String.toCharArray()

Из официальной документации:

Он возвращает вновь выделенный символьный массив, длина которого равна длине этой строки и содержимое которого инициализируется, чтобы содержать последовательность символов, представленную этой строкой.

Другой способ может быть:

int[] arr = new int[string.length()];

for(int i = 0; i<string.length(); i++){
    arr[i] = Character.getNumericValue(string.charAt(i));
    System.out.println(arr[i] + "  ") ;
}
public class StringToInt{
public int[] convert(String arg){
    char[] characters = arg.toCharArray();
    int[] integers = new int[arg.length()];

    for ( int i = 0; i < characters.length; i++ ) 
        integers[i] = Character.getNumericValue(characters[i]);  

    return integers;
}

private void prettyPrint(int[] result){
    System.out.print("array: ");
    for(int i : result){
        System.out.print(i+" ");
    }
}

public static void main(String[]args){
    StringToInt converter = new StringToInt();
    int[] result = converter.convert(args.length > 0?args[0]: "23578893762467290465" );
    converter.prettyPrint(result);
}
}

хорошо, люди бьют меня к этому. Но это сработает.

по сути:

  • Конвертировать в char-массив.
  • вызовите Character.getNumericValue() для каждого символа.
Другие вопросы по тегам