Q:

Split Строка в Java Android

По запросу на сервер приходит строка, которую я делю и вывожу на экран:
public void onSuccess(Context c, String result){
    String d = "<pub>"; 
    String[] public = result.split("<pub>");
    for(String pub: public){
        LinearLayout p = getPage(pub);
        main.addView(p);
    }
}

проблема в том, что если сервер возвращает строку без символов переменной d, он по понятным причинам выкидывает из приложения. Не могу написать проверку, чтобы, если возвратилась непонятная строка, он выводил, например, метод error().
Думаю понятно объяснил.

A:

В классе String в Java есть замечательный метод  contains(CharSequence s) проверяющий наличие подстроки в строке и возвращающий true при её наличии и false при отсутствии подстроки в строке.
Далее.
Прервать работу можно выкинув исключение.
Для этого исключение нужно сначала создать.
public class SubstringNotFoundException extends Exception {
    //...
}

Далее нужно всех уведомить что Ваш метод может выбрасывать что-то нехорошее
public void onSuccess(Context c, String result) throws SubstringNotFoundException {
    //...
}

Итого получаем:
public void onSuccess(Context c, String result) throws SubstringNotFoundException {
    String d = "<pub>"; 
    if(!result.contains(d))
        throw new SubstringNotFoundException();
    String[] public = result.split(d);
    for(String pub: public){
        LinearLayout p = getPage(pub);
        main.addView(p);
    }
}

