Ciao in questo articolo creeremo un semplice programma Java per trovare e stampare in output tutti gli elementi non in comune tra due array di tipo intero.
Il Programma è composto da 4 metodi:
- Metodo main: Il metodo main chiede all’utente di inserire un nome per i due Array che conterranno solo valori interi, dopo di che chiama il metodo print due volte per stampare i due array e successivamente chiama il metodo findDifferentElementsArray1inArray2 anch’esso due volte per cercare e stampare (in output) la prima volta gli elementi dell’Array1 che non sono presenti nell’Array2 e successivamente invertendo i parametri per cercare e stampare (in output) gli elementi dell’Array2 che non sono presenti nell’Array1.
- Metodo findDifferentElementsArray1inArray2: Metodo che stampa gli elementi dell’Array1 (primo parametro del metodo) che non sono presenti nell’Array2 (secondo parametro del metodo).
- Metodo loadArray: Metodo che chiede all’utente i valori interi per inserirli nell’array.
- Metodo print: Metodo che stampa in output i valori contenuti nell’array passato per parametro.
import java.util.Scanner;
public class Confronto2Array {
public static void main(String[] args) {
Scanner in= new Scanner(System.in);
try {
System.out.print("Inserire nome Array 1: ");
String nameArray1 = in.next();
int[] array1=loadArray(nameArray1, in);
System.out.print("Inserire nome Array 2: ");
String nameArray2 = in.next();
int[] array2=loadArray(nameArray2, in);
System.out.println("-------------------------------------------------------------");
print(nameArray1, array1);
print(nameArray2, array2);
System.out.println("Valori non in comune nell'Array "+nameArray1+":");
findDifferentElementsArray1inArray2(array1,array2);
System.out.println("Valori non in comune nell'Array "+nameArray2+":");
findDifferentElementsArray1inArray2(array2,array1);
}finally {
if(in != null)
in.close();
}
}
/*Metodo che stampa gli elementi dell'Array1 (primo parametro del metodo) che
non sono presenti nell'Array2 (secondo parametro del metodo)*/
public static void findDifferentElementsArray1inArray2(int[] array1, int[] array2) {
int totDifferentElem = 0;
for (int i = 0; i < array1.length; i++) {
boolean commonElement = false;
for (int j = 0; j < array2.length; j++) {
if(array1[i] == array2[j]) {
commonElement = true;
break;
}
}
if(!commonElement) {
if(totDifferentElem == 0) {
System.out.print(array1[i]);
}else {
System.out.print(" | " + array1[i]);
}
totDifferentElem++;
}
}
System.out.println();
}
//Metodo che chiede all'utente i valori interi e li inserisce nell'array
public static int[] loadArray(String name, Scanner in){
System.out.print("Inserire dimensione dell'Array "+name+": ");
int length = in.nextInt();
int[] array = new int[length];
for(int i=0; i<length; i++) {
System.out.print("Inserire elemento "+ (i+1) + " dell'Array "+name+": ");
array[i] = in.nextInt();
}
return array;
}
//Metodo che stampa in output i valori contenuti nell'array passato per parametro
public static void print(String name, int[] array){
System.out.println("Valori interi contenuti nell'Array "+name+":");
for(int i=0; i<array.length; i++) {
String elem = "";
if(i == array.length - 1) {
elem += array[i] + "\n";
}else {
elem += array[i] + " | ";
}
System.out.print(elem);
}
}
}
Per qualsiasi domanda scrimi qui sotto o sulla mia pagina Facebook.
P.S. Se vuoi accedere al mio corso GRATUITO dove spiego quali sono i segreti per imparare la programmazione anche se parti da zero e non hai nessuna competenza di base CLICCA QUI.
P.P.S. Se ti è piaciuto questo articolo lascia un commento qui sotto e clicca MI PIACE e CONDIVIDI sulla mia pagina Facebook per avere futuri aggiornamenti.