tak tu mám další problém. Mám vytvořit třídu Student (soubor Student.java), která bude mít privátní atributy osobniCislo a prumerZnamek. Musím napsat konstruktor, potřebné getry, setry a metodu toString(). Potom musim napsat metodu String vratLepsiPrumer(Student s), která ze dvou studentů vybere studenta s lepším průměrem známek a prostřednictvím metody toString() zajistí výpis jeho osobního čísla a průměru známek. Funkčnost třídy mám ověřit v aplikační třídě, ve které nejprve načtu pomocí statické metody Student nactiStudenta(Scanner sc) informace o dvou studentech, v pořadí osobní číslo a průměr známek, které budou pro každého studenta zadány na jednom řádku a navzájem odděleny mezerou. Tyto informace o obou studentech musím vypsat (metodou toString()) v pořadí, ve kterém byli studenti zadáni a informaci o studentu s lepším průměrem známek využitím již vytvořené metody datové třídy.
v souboru Student.java mám
public class Student {
//atributy
private String osobniCislo;
private double prumerZnamek;
//konstruktor
public Student(String osobniCislo, double prumerZnamek) {
this.osobniCislo = osobniCislo;
this.prumerZnamek = prumerZnamek;
}
//getry a setry
public String getOsobniCislo() {
return osobniCislo;
}
public double getPrumerZnamek() {
return prumerZnamek;
}
//metoda toString
public String toString() {
return "\n<Osobni cislo: " + osobniCislo + ", prumer = " + prumerZnamek + ">";
}
//metoda ktera ze dvou studentu vybere studenta s lepsim prumerem znamek
public String vratLepsiPrumer(Student s) {
}
}
a v hlavní třídě mám toto
import java.util.*;
public class XXX {
static Scanner sc = new Scanner(System.in);
public static Student nactiStudenta(Scanner sc) {
System.out.print("Zadejte osobni cislo a prumer: ");
String osobniCislo = sc.next();
double prumerZnamek = sc.nextDouble();
sc.nextLine();
Student s = new Student(osobniCislo, prumerZnamek);
return s;
}
public static void main(String[] args) {
sc = new Scanner(System.in);
sc.useLocale(Locale.US);
Student[] studenti = new Student[2];
for (int i = 0; i < studenti.length; i++) {
studenti[i] = nactiStudenta(sc);
}
System.out.println(Arrays.toString(studenti));
}
}
výstup má vypadat asi takto:
Zadejte osobni cislo a prumer: A09B0999P 3.1
Zadejte osobni cislo a prumer: A08B0999K 2.34
---Vysledky---
<Osobni cislo: A09B0999P, prumer = 3.1>
<Osobni cislo: A08B0999K, prumer = 2.34>
Lepsi prumer ma: <Osobni cislo: A08B0999K, prumer = 2.34>
Navíc mám v tom mojem výpisu navíc ještě před a za polem "[" "]".