Esempi JAVA

Da Bioingegneria Elettronica e Informatica.

Hello World

Esercizio introduttivo a JAVA. Il seguente codice mostra a video la stringa "Hello World !"

  1. /* Questo è il primo programma in JAVA
  2.  * e inizia con un commento multilinea
  3.  */
  4.  
  5. // Commento su singola linea
  6.  
  7. /**
  8.  * Uso della javadoc 
  9.  * Questo programma deve stampare sullo standard output, ovvero la console,
  10.  * la stringa "Hello World !"
  11.  * 
  12.  * @author antonio
  13.  *
  14.  */
  15.  
  16. public class Principale {
  17.  
  18. 	/**
  19. 	 * Metodo di avvio del programma
  20. 	 * @param args argomenti passati dalla linea di comando
  21. 	 */
  22. 	public static void main(String[] args) {
  23.  
  24. 		// Standard output
  25. 		System.out.println("Hello World !");	
  26. 	}
  27. }

Introduzione alle funzioni

È possibile unire gruppi di istruzioni per formare delle "funzioni" usate per evitare di replicare porzioni di codice sorgente più volte. Invocare una funzione significa mandare in esecuzione la porzione di codice che la costituisce. Se una funzione è invocata più volte, allora la porzione di codice è eseguita più volte: il vantaggio è dunque quello di poter avere tante chiamate ma una sola porzione di codice.

Dichiarazione, definizione e chiamata di una funzione

In JAVA è possibile dichiarare e definire una funzione nel seguente modo:

modificatore_visibilità tipo_restituito nomeFunzione (tipo1 param1, tipo2 param2, ..., tipoN paramN) 
{
    // blocco di codice appartenente al metodo
 
    return varTipo;
}

Il codice precedente definisce una funzione chiamata nomeFunzione che accetta come ingresso (dominio) N variabili (param1, param2, ..., paramN) ognuna con un determinato tipo e restituisce come uscita (codominio) una variabile il cui tipo è tipo_restituito.

Durante il flusso del programma, è possibile chiamare una funzione attraverso il suo nome, inserendo come argomento le necessarie variabili coerentemente con il dominio definito e assegnando il risultato ad una variabile dello stesso tipo di tipo_restituito'.

... // Serie di istruzioni
 
tipo_restituito var = nomeFunzione(var1, var2, ..., varN);
 
... // Serie di istruzioni

Esempio: Doppio e Somma

  1. /** Programma per mostrare il funzionamento di:
  2.  * 	1. Funzione chiamante (main) e funzione chiamata;
  3.  *  2. Variabili locali e parametri (valori) attuali; 
  4.  *  3. Passaggio per Valore;
  5.  * 
  6.  * @author antonio
  7.  * 
  8.  */
  9. public class Principale3 {
  10.  
  11. 	public static void main(String[] args) {
  12.  
  13. 		new Principale3().run();
  14.  
  15. 	}
  16.  
  17. 	public void run() {
  18. 		int origin = 3;
  19. 		int origin2 = 5;
  20. 		int result = 0;
  21.  
  22. 		System.out.println("Doppio di una variabile");
  23. 		// Calcolo il doppio della variabile v;
  24. 		System.out.println("Il valore di origin è: " + origin);
  25. 		result = doppio(origin);
  26. 		// Stampo v ed r;
  27. 		System.out.println("Il valore di origin è: " + origin);
  28. 		System.out.println("Il valore di result è: " + result);
  29.  
  30.  
  31. 		System.out.println("Somma di due variabili");
  32. 		// Calcolo la somma di origin e origin2;
  33. 		System.out.println("Il valore di origin è: " + origin);
  34. 		System.out.println("Il valore di origin2 è: " + origin2);
  35. 		result = somma(origin, origin2);
  36. 		System.out.println("Il valore di result è: " + result);
  37. 	}
  38.  
  39. 	/**
  40. 	 * Funzione per la stampa
  41. 	 */
  42. 	public void funzione_stampa() {
  43. 		// Questa funzione non fa niente.
  44. 		// Stampa a monitor la frase: "Funzione stampa chiamata"
  45.  
  46. 		System.out.println("Funzione stampa chiamata");
  47. 	}
  48.  
  49. 	/**
  50. 	 * Funzione per calcolare il doppio di un valore
  51. 	 * @param val
  52. 	 * @return
  53. 	 */
  54. 	public int doppio(int val) {
  55. 		int res = 0;
  56. 		res = val * 2;
  57.  
  58. 		return res;
  59. 	}
  60.  
  61. 	/**
  62. 	 * Funzione per calcolare la somma di due addendi
  63. 	 * @param add1
  64. 	 * @param add2
  65. 	 * @return
  66. 	 */
  67. 	public int somma(int add1, int add2) {
  68.  
  69. 		return add1 + add2;
  70. 	}
  71. }