大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java泛型的使用示例

Java泛型的使用示例

更新時間:2022-08-11 11:24:38 來源:動力節點 瀏覽2108次

在本教程中,動力節點小編將通過示例了解 Java 泛型、如何創建泛型類和方法及其優勢。

Java 泛型允許我們創建可用于不同類型的數據(對象)的單個類、接口和方法。

這有助于我們重用我們的代碼。

Java 泛型類

我們可以創建一個可用于任何類型數據的類。這樣的類稱為泛型類。

下面是我們如何在 Java 中創建泛型類:

示例:創建泛型類

class Main {
  public static void main(String[] args) {
    // initialize generic class
    // with Integer data
    GenericsClass<Integer> intObj = new GenericsClass<>(5);
    System.out.println("Generic Class returns: " + intObj.getData());
    // initialize generic class
    // with String data
    GenericsClass<String> stringObj = new GenericsClass<>("Java Programming");
    System.out.println("Generic Class returns: " + stringObj.getData());
  }
}
// create a generics class
class GenericsClass<T> {
  // variable of T type
  private T data;
  public GenericsClass(T data) {
    this.data = data;
  }
  // method that return T type variable
  public T getData() {
    return this.data;
  }
}

輸出

通用類返回:5
泛型類返回:Java 編程

在上面的例子中,我們創建了一個泛型類,名為泛型類. 此類可用于處理任何類型的數據。

class GenericsClass<T> {...}

這里,尖括號內使用的<>表示類型參數。在Main類中,我們創建了兩個對象泛型類對象- 這里,類型參數噸替換為Integer。現在泛型類適用于整數數據。

字符串對象- 這里,類型參數噸替換為String。現在泛型類適用于字符串數據。

Java 泛型方法

與泛型類類似,我們也可以創建一個可用于任何類型數據的方法。這樣的類稱為泛型方法。

下面是我們如何在 Java 中創建泛型類:

示例:創建泛型方法

class Main {
  public static void main(String[] args) {
    // initialize the class with Integer data
    DemoClass demo = new DemoClass();
    // generics method working with String
    demo.<String>genericsMethod("Java Programming");
    // generics method working with integer
    demo.<Integer>genericsMethod(25);
  }
}
class DemoClass {
  // creae a generics method
  public <T> void genericsMethod(T data) {
    System.out.println("Generics Method:");
    System.out.println("Data Passed: " + data);
  }
}

輸出

泛型方法:
通過的數據:Java 編程
泛型方法:
數據通過:25

在上面的示例中,我們創建了一個名為的泛型方法

public <T> void genericMethod(T data) {...}

在這里,類型參數<T>插入在修飾符之后public和返回類型之前void。

我們可以通過將實際類型放在方法名稱前的方括號內來調用泛型<String>方法<Integer>。

demo.<String>genericMethod("Java Programming");
demo.<Integer>genericMethod(25);

Java 泛型的優點

1. 代碼可重用性

借助 Java 中的泛型,我們可以編寫適用于不同類型數據的代碼。例如,

public <T> void genericsMethod(T data) {...}

在這里,我們創建了一個泛型方法。同樣的方法可用于對整數數據、字符串數據等執行操作。

2. 編譯時類型檢查

泛型的類型參數提供有關泛型代碼中使用Java的數據類型信息。例如,

// using Generics
GenericsClass<Integer> list = new GenericsClass<>();

在這里,我們知道泛型類僅使用Integer數據。

現在,如果我們嘗試將 Integer 以外的數據傳遞給此類,程序將在編譯時產生錯誤。

3. 與集合一起使用

集合框架使用 Java 中的泛型概念。例如,

// creating a string type ArrayList
ArrayList<String> list1 = new ArrayList<>();
// creating a integer type ArrayList
ArrayList<Integer> list2 = new ArrayList<>();

在上面的示例中,我們使用了相同的ArrayList 類來處理不同類型的數據。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲国产第一区 | 91久久澡人人爽人人添 | 日韩免费高清一级毛片在线 | 国产 欧美 日产久久 | 国产理论视频在线观看 | 日韩精品片 | 国产精品久久新婚兰兰 | 色综合天天综合网看在线影院 | 91青青青青青爽在线 | 欧美午夜在线播放 | 日韩精品无码一区二区三区 | 色播99| 国产精品久久国产精麻豆99网站 | 99久女女精品视频在线观看 | 国产精品所毛片视频 | 欧美日本日韩 | 草视频在线观看 | 天堂一区 | 色多多h | 国产成人91高清精品免费 | aaa一级黄色片 | 久久99综合国产精品亚洲首页 | 四虎国产永久免费久久 | 荷兰毛片| 四虎4w4w| 成人永久免费高清 | 欧美日韩视频在线第一区 | 狠狠色噜噜狠狠狠狠五月婷 | 小h片在线播放 | 超乳w真性中出し冲田杏梨101 | 干干干日日日 | 日韩男人天堂 | 国产精品好好热在线观看 | 九九热香蕉视频 | 成人欧美一区在线视频在线观看 | www男女| 免费观看精品视频999 | 国产成人精品久久免费动漫 | 在线观看日韩 | 久久久99精品免费观看精品 | 日韩伦理一区二区三区 |