Fondamenti di Informatica 1
Corsi di Laurea in Ingegneria
Informatica e Automatica

A.A. 2002/03


Esercitazione 5

Uso dei cicli

 

 

La classe StringTokenizer

La classe StringTokenizer permette ad una applicazione di suddividere una stringa in token. Un token è la più lunga sequenza di caratteri consecutivi di una stringa che non sono delimitatori. Possibili delimitatori sono " \t\n\r", cioè il carattere spazio, il carattere tab e il carattere a capo.

Esempio:
I token contenuti nella stringa:

"Sono uno studente
di Fondamenti di Informatica"

sono: "Sono" "uno" "studente" "di" "Fondamenti" "di" "Informatica"

Un oggetto di tipo StringTokenizer mantiene internamente la posizione del token corrente all'interno della stringa da analizzare. Alcuni metodi fanno avanzare tale posizione.

Esempio di uso di un oggetto di tipo StringTokenizer:

StringTokenizer st = new StringTokenizer("this is a test");
while (st.hasMoreTokens()) {
    System.out.println(st.nextToken());
}

prints the following output:

this
is
a
test

Nota:

La classe StringTokenizer si trova nel package java.util. Di conseguenza, ogni volta che si usa questa classe, è necessario importarla mediante l'istruzione import java.util.StringTokenizer;.

 

Constructor Summary
StringTokenizer(String str)
          Costruisce un oggetto di tipo StringTokenizer per la stringa str.
 
Method Summary
 boolean hasMoreTokens()
          Verifica se ci sono altri token nella stringa cui l'oggetto di tipo StringTokenizer si riferisce.
 String nextToken()
          Restituisce il token successivo.

 



Esercizio 1

Parte 1: Scrivere una classe Esperimento che mantenga informazioni riguardo ai dati misurati durante un esperimento. I dati vengono forniti sotto forma di una stringa di testo contenente valori interi (almeno uno) separati da spazi. La classe Esperimento deve avere le seguenti funzionalità:

Per realizzare le ultime tre funzionalità si utilizzino degli oggetti di tipo StringTokenizer, creati a partire dalla stringa che rappresenta i dati.

 

Parte 2: Scrivere un programma cliente della classe Esperimento, che legga da tastiera (mediante il metodo JOptionPane.showInputDialog) un insieme di valori interi finché l'utente preme il tasto Cancel, impacchettandoli in una stringa separati da spazi, crei poi un oggetto della classe Esperimento definita precedentemente e stampi la media dei valori inseriti.

 

Esercizio 3

Scrivere un metodo statico Java che legga da tastiera (mediante il metodo JOptionPane.showInputDialog) una vocale e una stringa e restituisca la stringa ottenuta sostituendo ad ogni vocale, la vocale letta in ingresso.

 

Esercizio 4

Scrivere un metodo statico Java che legga da tastiera (mediante il metodo JOptionPane.showInputDialog) una stringa, ne calcoli la stringa invertita, concateni le due stringhe e le stampi. Es.: Data la stringa "pippo", deve stampare "pippooppip".