Esempi JAVA: differenze tra le versioni

Da Bioingegneria Elettronica e Informatica.
(Esempio: Doppio e Somma)
(Introduzione alle funzioni)
Riga 31: Riga 31:
 
}
 
}
 
}
 
}
</syntaxhighlight>
 
 
== 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:
 
<syntaxhighlight lang="java">
 
modificatore_visibilità tipo_restituito nomeFunzione (tipo1 param1, tipo2 param2, ..., tipoN paramN)
 
{
 
    // blocco di codice appartenente al metodo
 
 
    return varTipo;
 
}
 
</syntaxhighlight>
 
 
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'''.
 
 
<syntaxhighlight lang="java">
 
 
... // Serie di istruzioni
 
 
tipo_restituito var = nomeFunzione(var1, var2, ..., varN);
 
 
... // Serie di istruzioni
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Versione delle 13:56, 21 mar 2017

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. }

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 Principale {
  10.  
  11. 	public static void main(String[] args) {
  12.  
  13. 		new Principale().run();
  14. 	}
  15.  
  16. 	public void run() {
  17.                 // Dichiarazione e inizializzazione delle variabili origin, origin2 e result
  18. 		int origin = 3;
  19. 		int origin2 = 5;
  20. 		int result = 0;
  21.  
  22. 		System.out.println("Doppio di una variabile");
  23.  
  24. 		// Stampa in console del valore attuale di origin
  25. 		System.out.println("Il valore di origin è: " + origin);
  26.  
  27.                 /* Calcolo il doppio della variabile origin:
  28.                  * 1. chiamo la funzione doppio
  29.                  * 2. salvo il risultato nella variabile result
  30.                  */
  31. 		result = doppio(origin);
  32.  
  33. 		// Stampa in console il valore di result
  34. 		System.out.println("Il valore di result è: " + result);
  35.  
  36.  
  37. 		System.out.println("Somma di due variabili");
  38.  
  39. 		// Stampa in console del valore attuale di origin e origin2
  40. 		System.out.println("Il valore di origin è: " + origin);
  41. 		System.out.println("Il valore di origin2 è: " + origin2);
  42.  
  43.                 // Calcolo la somma di origin e origin2
  44. 		result = somma(origin, origin2);
  45.  
  46.                 // Stampa in console il valore di result
  47. 		System.out.println("Il valore di result è: " + result);
  48. 	}
  49.  
  50. 	/**
  51. 	 * Funzione per calcolare il doppio di un valore
  52. 	 * @param val
  53. 	 * @return
  54. 	 */
  55. 	public int doppio(int val) {
  56.                 // Dichiaro la variabile res per salvare il doppio della variabile val
  57. 		int res = 0;
  58. 		res = val * 2;
  59.  
  60.                 // Restituzione di res
  61. 		return res;
  62. 	}
  63.  
  64. 	/**
  65. 	 * Funzione per calcolare la somma di due addendi
  66. 	 * @param add1
  67. 	 * @param add2
  68. 	 * @return
  69. 	 */
  70. 	public int somma(int add1, int add2) {
  71.  
  72.                 // Codice compatto che fa la somma di add1 e add2 e restituisce il risultato
  73. 		return add1 + add2;
  74. 	}
  75. }