Input/Output con metodi della classe JOptionPane

La classe JOptionPane, utilizzabile importandola con la direttiva

import javax.swing.JOptionPane;
permette di eseguire operazioni di input/output attraverso i metodi JOptionPane.showInputDialog e JOptionPane.showMessageDialog.

Input

Il metodo JOptionPane.showInputDialog viene usato nel modo seguente:

	String s = JOptionPane.showInputDialog("Digita del testo");
e visualizza una finestra nella quale viene mostrata la stringa passata come parametro insieme a una zona nella quale l'utente può immettere testo. Il testo immesso viene restituito come risultato del metodo. Nel caso si voglia utilizzare il metodo per l'immissione di valori numerici, la stringa restituita può essere convertita a un int attraverso il metodo Integer.parseInt (attenzione alle I maiuscole), che accetta come parametro una stringa e restituisce l'intero rappresentato nella stringa. Ad esempio:
	int n;
	String s = JOptionPane.showInputDialog("Digita un intero positivo");
	n = Integer.parseInt(s);
o equivalentemente
	int n;
	n = Integer.parseInt(JOptionPane.showInputDialog("Digita un intero positivo"));
Per la conversione di stringhe in valori di altri tipi primitivi esistono i metodi
Byte.parseByte(...)
Short.parseShort(...)
Long.parseLong(...)
Float.parseFloat(...)
Double.parseDouble(...)
che restituiscono i tipi corrispondenti.

Output

Il metodo JOptionPane.showMessageDialog viene usato nel modo seguente:

	JOptionPane.showMessageDialog(null, "Ciao");
e visualizza una finestra nella quale viene mostrata la stringa passata come secondo parametro.

Semplici algoritmi su arrays

Inizializzazione di arrays

Un array può essere inizializzato con delle costanti al momento della dichiarazione nel modo seguente:

int[] v = {2, 5, 4, 3, 0, 6, 9};
invece di
int[] v = new int[7];
e dover poi immettere manualmente i valori da input.

In questo modo la lunghezza dell'array è definita implicitamente attraverso il numero di elementi elencati nelle parentesi graffe. Questo è utile soprattutto nella fase di messa a punto di un programma, poiché evita di dover sempre immettere manualmente i valori da memorizzare nell'array a ogni tentativo di esecuzione.

Primo esercizio

Scrivere un programma che:

Secondo esercizio

Scrivere un programma che:

Ad esempio, se l'array contenesse i valori (0.96, 0.2, 0.4, 0.1, 0.55, 0.03, 0.88), poiché la media è 0.4457, si dovrebbero creare e stampare i due array (0.2, 0.4, 0.1, 0.03) e (0.96, 0.55, 0.88)

Suggerimenti:

Soluzione