[ akasha org. @ 13.05.2007. 19:24 ] @
| Telo konstruktora mi baca izuzetak:
Code:
public TestScores (double [] s) throws IllegalArgumentException {
scores = new double [s.length];
for (int i=0; i<scores.length; i++) scores[i] = s[i];
for (int i=0; i<scores.length; i++)
if (s[i]<0 || s[i]>100) throw new IllegalArgumentException ();
}
U test programu izuzetak se hvata sa:
Code:
catch (IllegalArgumentException e)
{
System.out.println("Invalid score found.\n" + e.getMessage());
}
Problem je u getMessage() metodi, ona treba da ispishe s koje ne zadovoljava oseg od 0 do 100. Kako? |
[ Black @ 13.05.2007. 19:40 ] @
Pa, valjda bi trebalo poruku da prosledis preko konstruktora
Code:
if (s[i]<0 || s[i]>100) throw new IllegalArgumentException ("s koje ne zadovoljava oseg od 0 do 100");
[ akasha org. @ 13.05.2007. 19:55 ] @
sorry, nisam bio precizan. Ispisuje s od i (da ne prihvata kao italic tag) koje ne zadovoljava opseg, znachi, trebam da prosledim double argument, a ne moze da ga prihvati kao String. double nema toString metodu..
[ akasha org. @ 13.05.2007. 19:58 ] @
reshio! Treba da stoji:
Code:
if (s[i]<0 || s[i]>100) throw new IllegalArgumentException ("" + s[i]);
thanx
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.