大战熟女丰满人妻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 類來處理不同類型的數據。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产偷国产偷亚洲高清在线 | 亚洲欧洲国产成人综合一本 | 成人国产第一区在线观看 | 国产51自产区 | 久久www免费人成精品 | 久热免费 | 97视频在线免费 | 看全色黄大色大片免费视频 | 亚洲精品一区二区深夜福利 | 欧美日韩亚洲精品一区 | 国产亚洲欧美在线观看的 | 岛国毛片一级一级特级毛片 | 91成人国产网站在线观看 | 午夜精品久久久久久久99 | 亚洲h在线观看 | 模特精品视频一区 | 亚洲免费视频一区 | 九九热思思 | 一区二区三区四区视频在线 | 久草视频中文 | 国产精品久久久久这里只有精品 | 九九在线观看精品视频6 | 亚洲综合日韩中文字幕v在线 | 人人爽天天爽夜夜爽qc | a拍拍男女免费看全片 | 好吊妞欧美视频免费 | 午夜影院毛片 | 91精品国产91久久久久久 | 欧美成人xx大片 | 999毛片| 欧美激情视频二区 | 亚洲国产高清精品线久久 | 在线观看欧美一区 | 久久99久久99精品免观看动漫 | 欧美在线激情视频 | 精品视频在线观看一区二区三区 | 五月天婷婷在线视频 | 国产成人精品日本亚洲专一区 | 午夜欧美成人 | x99av在线播放| 免费观看a毛片一区二区不卡 |