Hai ragione, hanno chiesto la funzione. Sinceramente non trovo la comodità delle funzioni, comunque:
package vacanze_estive_7;
/**
*
* @author OOO
*/
import java.util.*;
import javax.swing.JOptionPane;
public class Vacanze_estive_7 {
public static char carattere(char[] vettore1, char[] vettore2) {
int cont1 = 0;
int cont2 = 0;
char massimo = ' ';
int i = 0;
int c = 0;
for (i = 0; i < vettore1.length; i++) {
for (c = 0; c < vettore2.length; c++) {
if (vettore1[i] == vettore2[c]) {
cont1++;
}
}
if (cont1 > cont2) {
massimo = vettore1[i];
}
cont2 = cont1;
cont1 = 0;
}
return massimo;
}
public static void main(String[] args) {
Random generatore = new Random();
String output = "";
char massimo = ' ';
char caratteri[] = {'Q',
'A', 'Z', 'W', 'S', 'X', 'E', 'D', 'C', 'R', 'F',
'V', 'T', 'G', 'B', 'Y', 'H', 'N', 'U', 'J', 'M', 'I', 'K', 'O', 'L', 'P'};
String input = JOptionPane.showInputDialog("Quanto vuoi che sia grande il vettore? ");
int grandezza = Integer.parseInt(input);
char caratteriCasuali[] = new char[grandezza];
int i = 0;
for (i = 0; i < grandezza; i++) {
caratteriCasuali[i] = caratteri[generatore.nextInt(caratteri.length)];
// input = JOptionPane.showInputDialog("Inserisci la "+(i+1)+" lettera.");
// caratteriCasuali[i] = Character.toUpperCase(input.charAt(0));
if ((i + 1) % 10 == 0) {
output += caratteriCasuali[i] + "\n";
} else {
output += caratteriCasuali[i] + " ";
}
}
massimo = carattere(caratteri, caratteriCasuali);
JOptionPane.showMessageDialog(null, output + "\n\nIl carattere che viene ripetuto più volte è "
+ massimo);
}
}