Problem z zadankiem StringTokenizer.

Problem z zadankiem StringTokenizer.
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam. mam problem z zadaniem:
Mamy tekst jak poniżej:

String tekst = "Teoretycznie - zauważa Tornielli - wciąż możliwa jest data 2 kwietnia 2011 roku, czyli szósta rocznica śmierci Jana Pawła II. Prawdopodobna jest też jego zdaniem beatyfikacja w maju albo w październiku, gdy przypadnie 33. rocznica wyboru Karola Wojtyły. Włoski publicysta zwrócił uwagę, że wydarzenie to przysporzy znacznych problemów organizacyjnych z powodu liczby wiernych, którzy będą chcieli w nim uczestniczyć w Watykanie.
";

Wyświetl ten tekst na 3 sposoby:
-wyraz po wyrazie, tak aby liczba znaków w jednej linii nie przekroczyła 60;
-wyraz po wyrazie, ale od końca
-wyraz po wyrazie od końca ale litery w wyrazach również od końca

Wykorzystaj klasy StringTokenizer i StringBuffer. Zadanie to wykonaj na dwa sposoby:

-do sprawdzenia ilości tokenów lub ich braku wykorzystaj metodę hasMoreTokens() lub hasMoreElements() klasy StringTokenizer
-do sprawdzenia ilości tokenów lub ich braku wykorzystaj obsługę wyjątku NoSuchElementException - nie możesz wykorzystać metod ani hasMoreTokens() ani hasMoreElements().

Moglby mi ktos pomoc, albo podpowiedziec jak to zrobic?:)

LN
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1398
0

Po pierwsze przeczytac na necie kilka przykładów użycia tych klas a potem pomyśleć...

Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

Dzień miłosierdzia:
http://www.ideone.com/JIT6v
:)

  • Rejestracja: dni
  • Ostatnio: dni
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam, mam do wykonania podobne zadanie i mam pytanie:
Jak wyświetlić łańcuch znakowy zaczynajac od np drugiego do ostatniego wyrazu i oddzielnie przedostatniego wyrazu ?

Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

Najprościej to chyba będzie użyć metod z klasy String: indexOf(' '), lastIndexOf(' '), substring(.., ..).

  • Rejestracja: dni
  • Ostatnio: dni
0

Dzięki. Ale jeśli ten tekst jest dowolny, pobierany w dialogu wejściowym, to jak to konkretnie zrobić? Czego użyć?

Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

No przecież i tak wczytujesz go do Stringa, no nie?

AT
  • Rejestracja: dni
  • Ostatnio: dni
0

Czego użyć by pobrać ? bo troche niezrozumiale napisałeś.

Możesz to zrobić tak:

Kopiuj
Scanner sc = new Scanner(System.in);
String tekst = null;
tekst = sc.nextLine();

i potem działasz już na String Tokenizer uzywając zmiennej tekst

  • Rejestracja: dni
  • Ostatnio: dni
0

Mam użyć

Kopiuj
s=JOptionPane.showInputDialog

by pobrać łańcuch znakowy. I dalej nie wiem jak wprowadzić ciąg znaków od drugiego do ostatniego...
Mam taki kod i jest błąd :

Kopiuj
void wyrazy(String s) {
        StringTokenizer tokenizer = new StringTokenizer(s);
        List lista = Collections.list(tokenizer);
        ListIterator<String> iterator = lista.listIterator(lista.size());
        try {
            while (true) {
                String wyraz = s.indexOf(2);
                String wyraz2= s.lastIndexOf();
                System.out.print(wyraz + " ");
            }
        } catch (NoSuchElementException ex) {
        }
        System.out.println();
    }

Proszę o pomoc.

Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

(last)indexOf przyjmuje znak i zwraca jego indeks.

Ty chcesz wyświetlić wszystkie wyrazy po kolei pomijając pierwszy wyraz czy co? Napisz to zrozumiale.

  • Rejestracja: dni
  • Ostatnio: dni
0

Tak chcę wyświetlić wszystkie wyrazy po kolei pomijając pierwszy wyraz.... Następne pytanie jak sprawdzić czy dwa wyrazy np: pierwszy i ostatni. są takie same?

Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

To są podstawy kolo!!! Bierz się do nauki.

http://www.ideone.com/teI0t

Zrobiłem jednak za ciebie.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.