Classe soci per la gestione delle quote dei soci di un ente no profit – Federico Scifo 4A IT 2020/2021
//Richiamo la libreria java.io
import java.io.*;
//Classe Soci
public class Soci {
// Attributi
private String codiceSocio, cognome, nome, annoNascita, quotaPagata, quota;
// Max device da poter inserire
final static int MAX = 100;
/* Array di nSoci */
private Soci[] socio = new Soci[MAX];
// Costruttore: inizializza gli attributi
public Soci(String codiceSocio, String cognome, String nome, String annoNascita, String quotaPagata) {
this.codiceSocio = "";
this.cognome = "";
this.nome = "";
this.annoNascita = "";
this.quotaPagata = "";
}
/* Getters (preleva)*/
public String getCodiceSocio() {
return codiceSocio;
}
public String getCognome() {
return cognome;
}
public String getNome() {
return nome;
}
public String getAnnoNascita() {
return annoNascita;
}
public String getQuotaPagata() {
return quotaPagata;
}
public String getQuota() {
return quota;
}
// Setters (imposta)
public void setCodiceSocio(String codiceSocio) {
this.codiceSocio = codiceSocio;
}
public void setCognome(String cognome) {
this.cognome = cognome;
}
public void setNome(String nome) {
this.nome = nome;
}
public void setAnnoNascita(String annoNascita) {
this.annoNascita = annoNascita;
}
public void setQuotaPagata(String quotaPagata) {
this.quotaPagata = quotaPagata;
}
public void setQuota(String quota) {
this.quota = quota;
}
// Metodo che serve ad aggiungere le informazioni nell'array dato //
public void addSocio(int nSoci){
/* Oggetto per leggere lo streaming da tastiera */
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader tastiera = new BufferedReader(input);
// Ciclo for per popolare array
for (int i = 1; i <= nSoci; i++) {
// Blocco dell'eventuale eccezione generata
try {
System.out.println("--> Socio [" + (i) + "]");
System.out.println("Inserisci il codice : ");
setCodiceSocio(tastiera.readLine());
System.out.println("Inserisci il cognome: ");
setCognome(tastiera.readLine());
System.out.println("Inserisci il nome: ");
setNome(tastiera.readLine());
System.out.println("Inserisci l'anno di nascita: ");
setAnnoNascita(tastiera.readLine());
System.out.println("Inserisci la quota pagata: ");
setQuotaPagata(tastiera.readLine());
} catch (Exception e) {
System.out.println("\nHai inserito un valore non valido!");
return;
}
socio[i] = new Soci(getCodiceSocio(), getCognome(), getNome(), getAnnoNascita(), getQuotaPagata());
}
}
// Metodo che serve ad modificare ed a visualizzare la quota pagata
public void modQuota(int nSoci) {
/* Oggetto per leggere lo streaming da tastiera */
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader tastiera = new BufferedReader(input);
// Ciclo for per popolare array
for (int i = 1; i <= nSoci; i++) {
// Blocco dell'eventuale eccezione generata
try {
System.out.println("Vuoi modificare la quota pagata del socio ["+(i)+"]");
setQuota(tastiera.readLine());
if(quota.equals("Si")) {
System.out.println("Inserisci quota aggiornata : ");
setQuotaPagata(tastiera.readLine());
System.out.println("Quota Modificata : "+quotaPagata);
}
} catch (Exception e) {
return;
}
socio[i] = new Soci(getCodiceSocio(), getCognome(), getNome(), getAnnoNascita(), getQuotaPagata());
}
}
// Metodo che serve ad modificare ed a visualizzare la quota pagata
public void stampaSoci(int nSoci) {
/* Oggetto per leggere lo streaming da tastiera */
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader tastiera = new BufferedReader(input);
// Ciclo for per popolare array
for (int i = 1; i <= nSoci; i++) {
// Blocco dell'eventuale eccezione generata
try {
for (int j = 1 ; j <nSoci; j++) {
int annoMin=Integer.valueOf(socio[j+j].annoNascita);
int annoMax=0;
if (Integer.valueOf(socio[j+j].annoNascita) < annoMin) {
System.out.println("\n********");
System.out.println("\nIl Cliente piu' giovane e' " + socio[j].cognome + " " +socio[j].nome);
}
if (Integer.valueOf(socio[j].annoNascita) > annoMax){
System.out.println("\nIl Cliente piu' anziano e' " + socio[j].cognome + " " +socio[j].nome);
}
}
} catch (Exception e) {
System.out.println("\nHai inserito un valore non valido!");
return;
}
socio[i] = new Soci(getCodiceSocio(), getCognome(), getNome(), getAnnoNascita(), getQuotaPagata());
}
}
}