05.AV-GenerickoProgramiranje Auditorne
05.AV-GenerickoProgramiranje Auditorne
programiranje u Javi
AUDITORNE VJEŽBE
Sadržaj
Primjer metode koja vraća generički tip
podatka
Primjer parametrizirane klase
Primjer korištenje zamjenskih simbola
Pitanja s certifikata
Primjer metode koja vraća generički tip
podatka
• Klase koje implementiraju sučelje „Comparable” pružaju mogućnost svojim
objektima da se međusobno uspoređuju korištenjem metode „compareTo”
• Ako je potrebno napisati generičku metodu koja može primati samo takve klase,
onda je to moguće navesti kod same deklaracije klase korištenjem preduvjeta
„extends Comparable”
• Sučelje „Comparable” također prima generički tip pa je u tom slučaju moguće
koristiti i isti tip T:
public static <T extends Comparable<T>> T maximum(T x, T y, T z)
Primjer metode koja vraća generički tip
podatka
public static <T extends Comparable<T>> T maximum(T x, T y, T z)
{
T max = x;
if (y.compareTo(max) > 0)
max = y;
if (z.compareTo(max) > 0)
max = z;
return max;
}
Primjer metode koja vraća generički tip
podatka
public static void main(String[] args)
{
System.out.printf("Maximum of %d, %d and %d is %d%n%n", 3, 4, 5,
maximum(3, 4, 5));
System.out.printf("Maximum of %.1f, %.1f and %.1f is %.1f%n%n",
6.6, 8.8, 7.7, maximum(6.6, 8.8, 7.7));
System.out.printf("Maximum of %s, %s and %s is %s%n", "pear",
"apple", "orange", maximum("pear", "apple", "orange"));
}
Maximum of 3, 4 and 5 is 5
public Stack() {
this(10);
}
public T pop()
{
if (elements.isEmpty()) {
throw new EmptyStackException("Stack is empty, cannot pop");
}
return elements.remove(elements.size() - 1);
}
}
Primjer parametrizirane klase
public static void main(String[] args) {
double[] doubleElements = {1.1, 2.2, 3.3, 4.4, 5.5};
testPushDouble(doubleStack, doubleElements);
testPopDouble(doubleStack);
}
return total;
}
Pitanja s certifikata (1)
Pitanja s certifikata (2)
Pitanja s certifikata (3)
Pitanja s certifikata (4)
Pitanja s certifikata (5)
Pitanja?