#java #arrays #split
#java #массивы #разделение
Вопрос:
Я хочу извлечь строки из массива строк и разделить разделитель «;» при хранении данных в массиве. Я знаю, что это то, что должен делать метод split. Но я не могу дозвониться. Как я должен обрабатывать?
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String LON = in.next();
String LAT = in.next();
int N = in.nextInt();
in.nextLine();
String[] infoDefib=new String[N];
for (int i = 0; i < N; i ) {
String DEFIB = in.nextLine();
infoDefib[i]=DEFIB.split(";");
}
//System.out.println();
}
Ответ №1:
Функция split разделит строку и сохранит каждую из них в массив строк.
пример: String[] strs = DEFIB.split(«;»);
Вам не нужно использовать цикл for и сохранять их в String[] отдельно. Создайте строку[] и равную String.split(«***»). Java сделает это за вас.
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
//String LON = in.next();
//String LAT = in.next();
String str = in.nextLine(); // use nextLine which you can read whole
//line and store the data into a String
in.nextLine();
String[] infoDefib = DEFIB.split(";");//now you store them into a String array
Комментарии:
1. Проблема, когда я объявляю и инициализирую массив в цикле for, заключается в том, что я не знаю, как вернуть его за пределы цикла. Я новичок в Java.
Ответ №2:
split()
Метод String довольно прост. Вам нужно передать разделитель в качестве аргумента, и он вернет массив строк, в котором строка разделена указанным разделителем.
Пример :
String data = "This.is.simple.example.of.split.method";
String[] splitArray = data.split(".");//period(.) being delimeter
for (String val : splitArray) {
System.out.println(val);
}
Результат :
This
is
simple
example
of
split
method