Въпрос по Java basic
Здравейте,
Срещнах малко затруднение при следната задача:
Имам обект, който ми е масив от n елемента, в случая 4 от тип класа Student и съм ги запълнила с информация.
Student[] st=new Student[4];
st[0]=new Student("Ivan",4324,25);
st[1]=new Student("Ulia",4234,25);
st[2]=new Student("Petur",343,24);
st[3]=new Student("Mihaela",432,43);
System.out.println(Arrays.toString(st));
Искам да принтирам тази информация, но ми принтира адреса от стека.
Благодаря предварително!
В този случай ми подчертава toString, направих override на toString, но отново не се получава.
System.out.println(st[i]); не ти принтира в цикъл?
Принтира ми това
Student@15db9742
Student@6d06d69c
Student@7852e922
Ами изглежда, като да не си направила overide на toString(). Дай да видя overidе -а .
@Override
public String toString() {
return Student.name + " "
+ " " + Student.fNom +" "
+ Student.group ;
}
Сега ми връща само последния елемен от масива няколко пъти
st[3]=new Student("Mihaela",432,43);
public class main {
public static void main(String[] args)
{
Student[] st=new Student[3];
st[0]=new Student("Ivan",4324,25);
st[1]=new Student("Ulia",4234,25);
st[2]=new Student("Petur",343,24);
st[3]=new Student("Mihaela",432,43);
print(st);
}
public static void print(Student[] st){
for(int i=0;i<st.length;i++){
System.out.println(st[i]);
}
}
В toString() имаш 3 параметъра, а в класа Student задаваш 2. На масива му казваш да е от 3 елемента, а му задаваш 4. Нещо не е наред. Я пусни целия код в pastebin да го видя. Че не мога да схвана цялостната картинка.
http://pastebin.com/rPBUhZ7N
Да, това го оправих с големината на масива, но не променя резултата.
Ами пуснах ти кода и ето резултата:
Mihaela 432 43
Mihaela 432 43
Mihaela 432 43
Mihaela 432 43
Process finished with exit code 0
Изглежда, че си работи. Пробвай да рестартираш IntelliJ.
Това и на мен ми излиза като резултат, проблема е, че искам да ми изпринтира и остналата информация от st[0], st[1] и st[2]. В случая принтира само st[3].
Видях къде е проблема. Преправих ти целят клас Student. Май си нямаш представа от OOП.
Сега вече работи. Поздрави!
Имам малка представа, която току-що се наруши...
Много благодаря за отделеното време! :)