Java Generics - ประเภทพารามิเตอร์

คลาส Generic สามารถมีชนิดที่กำหนดพารามิเตอร์โดยที่พารามิเตอร์ประเภทสามารถถูกแทนที่ด้วยชนิดพารามิเตอร์ ตัวอย่างต่อไปนี้จะแสดงแนวคิดที่กล่าวถึงข้างต้น

ตัวอย่าง

สร้างโปรแกรม java ต่อไปนี้โดยใช้โปรแกรมแก้ไขที่คุณเลือก

GenericsTester.java

package com.tutorialspoint;

import java.util.ArrayList;
import java.util.List;


public class GenericsTester {
   public static void main(String[] args) {
      Box<Integer, List<String>> box
         = new Box<Integer, List<String>>();
      
      List<String> messages = new ArrayList<String>();
      
      messages.add("Hi");
      messages.add("Hello");
      messages.add("Bye");      
      
      box.add(Integer.valueOf(10),messages);
      System.out.printf("Integer Value :%d\n", box.getFirst());
      System.out.printf("String Value :%s\n", box.getSecond());

      
   }
}

class Box<T, S> {
   private T t;
   private S s;

   public void add(T t, S s) {
      this.t = t;
      this.s = s;
   }

   public T getFirst() {
      return t;
   } 

   public S getSecond() {
      return s;
   } 
}

สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้

เอาต์พุต

Integer Value :10
String Value :[Hi, Hello, Bye]