Разбить строку ";0;;;;1;;;;0;;;0;;;;;;3;;" и найти значение между двумя символами ";"

Есть строка String str = ";0;;;;1;;;;0;;;0;;;;;;3;;"; Например необходимо из нее достать значение которое находиться между 4-й и 5-й ";", где значение может быть как "null" так и "12000,00", и количество символов может меняться.


Ответы (1 шт):

Автор решения: Виталий Михайлюк
String str = "1;2;3;4;;1;6;7;8;0;;;0;;;;;;3;;";
    String[] subStr;
    String delimeter = ";";
    subStr = str.split(delimeter);
    String a = null;
    for(int i = 4; i < 5; i++) {
        a =subStr[i];
        System.out.println("a " + a);
        if (a.equals("")) {
            a="0";
            System.out.println("a " + a);
        }
    }

    System.out.println("a " + a );

Подскажите плиз почему у меня "a" не определяеться, когда между ";" ничего нету?

Нашел решение: должно быть - "a.equals("")".

→ Ссылка