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() для каждого символа.