This shows you the differences between two versions of the page.
|
java:generic_bounded_types [2020/03/11 07:40] gthanos [Κάτω φραγμένοι παραμετρικοί τύποι (Lower Bounded Wildcards)] |
java:generic_bounded_types [2020/03/11 07:40] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Φραγμένοι παραμετρικοί τύποι δεδομένων ====== | ||
| - | |||
| - | Παρακάτω αναλύονται 3 υποκατηγορίες παραμετρικών τύπων δεδομένων | ||
| - | * οι άνω φραγμένοι παραμετρικοί τύποι | ||
| - | * οι κάτω φραγμένοι και | ||
| - | * οι μη φραγμένοι | ||
| - | |||
| - | ===== Άνω φραγμένοι παραμετρικοί τύποι (Upper Bounded Wildcards) ===== | ||
| - | |||
| - | <code java> | ||
| - | public static void process(List<? | ||
| - | </ | ||
| - | |||
| - | Στην παραπάνω δήλωση ο τύπος δεδομένων της παραμετρικής κλάσης '' | ||
| - | |||
| - | ===== Κάτω φραγμένοι παραμετρικοί τύποι (Lower Bounded Wildcards) ===== | ||
| - | |||
| - | <code java> | ||
| - | public static void addNumbers(List<? | ||
| - | for (int i = 1; i <= 10; i++) { | ||
| - | list.add(i); | ||
| - | } | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | Στην παραπάνω δήλωση ο τύπος δεδομένων της παραμετρικής κλάσης '' | ||
| - | |||
| - | |||
| - | ===== Μη φραγμένοι παραμετρικοί τύποι (Unbounded Wildcards) ===== | ||
| - | |||
| - | Θα εξετάσουμε τους μη φραγμένους παραμετρικούς τύπους μέσα το παρακάτω παράδειγμα. | ||
| - | <code java> | ||
| - | public static void printList(List< | ||
| - | for (Object elem : list) | ||
| - | System.out.println(elem + " "); | ||
| - | System.out.println(); | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | Ο παραπάνω κώδικας τυπώνει αντικείμενα από μία λίστα αντικειμένων τύπου '' | ||
| - | |||
| - | Αν θέλουμε να γράψουμε μία αρκετά γενική μέθοδο λίστας που να τυπώνει λίστες οποιουδήποτε αντικειμένου αρκεί να γράψουμε το παρακάτω | ||
| - | |||
| - | <code java> | ||
| - | public static void printList(List<?> | ||
| - | for (Object elem: list) | ||
| - | System.out.print(elem + " "); | ||
| - | System.out.println(); | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | Σε αναλογία με το παραπάνω, | ||
| - | |||
| - | <code java> | ||
| - | public static void printΝumbers(List<? | ||
| - | for (Number num: list) | ||
| - | System.out.print(num + " "); | ||
| - | System.out.println(); | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | |Προηγούμενο: | ||
| - | |||
| - | |||