Zwracałanie tablicy napisów powstałych z rozdzielenia napisu `str` napisami które zaczynają się od znaku `p`

0

Hej
Próbuję wyciągnąć z tekstu wyrazy zaczynające się na literę "p". Jak już się uda to je zapisać w tablicy str. Lecz jeszcze mi się nic nie wyświetliło.

public class Main2 {

    public static void main(String[] args) {


        String str = "Z nami niezależnie od wykształcenia możesz zmienić swoją karierę." +
                " Jesteśmy szkołą oferującą bardzo intensywne kursy programowania." +
                " Przygotujemy Cię do pracy na stanowisku junior web developera i pomożemy znaleźć zatrudnienie po kursie.";

        char poczatekOdP = 'p';

        getStartWith(str, poczatekOdP);
    }

    static String[] getStartWith(String str, char c) {

        String[] tabNapZStr = new String[0];
        try {
            Scanner scan = new Scanner(str);
            while (scan.hasNextLine()) {
                String line = scan.nextLine();
                String[] parts = line.split(" ");
                for (int i = 0; i < parts.length; i++) {
                    if (parts[i].equals(c)) {
                        tabNapZStr[i] = parts[i];
                        System.out.println(tabNapZStr);
                    }
                }
            }
        } catch (Exception e) {
            System.err.println("błąd: " + e.getMessage());
        }
        return tabNapZStr;
    }
}
0

W ifie sprawdzasz equalsem zamiast startsWith.

Ogólnie zagadnienie jest dość proste, a kodzik, który napisałeś jest względnie skomplikowany. Spróbuj skorzystać z Java 8 Streams, ładnie i czytelnie sobie możesz niechciane słowa odfiltrować.

1 użytkowników online, w tym zalogowanych: 0, gości: 1