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

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

Java泛型的使用示例

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

在本教程中,動力節點小編將通過示例了解 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?,F在泛型類適用于整數數據。

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

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热久久免费频精品99欧美 | 亚洲欧美一二三区 | 伊人涩涩 | 久久爱avwww久久爱 | 国产欧美日韩综合一区二区三区 | 日本精品一区二区三本中文 | 免费精品视频 | 亚洲一区二区成人 | 一级免费看片 | 国产一区二区在线视频观看 | 久久亚洲免费视频 | 全部免费毛片 | 99久久精品免费看国产高清 | 精品亚洲综合在线第一区 | 狠狠干2022| 香蕉tv亚洲专区在线观看 | 国产自愉怕一区二区三区 | 色综合天天综合网国产人 | julia在线播放 | 一色屋精品亚洲香蕉网站 | 四虎午夜影院 | 91久久国产青草亚洲 | 亚洲国产精品热久久 | 久在线视频 | 亚洲精品不卡在线 | 日本一级毛片一级裸片 | 日本一级毛片视频网站 | 6080欧美一区二区三区四区 | 久久精品国产大片免费观看 | 亚洲国产人成在线观看69网站 | 国产乱人伦精品一区二区 | 任我鲁精品视频精品 | 国产羞羞视频 | 欧美一区永久视频免费观看 | 青娱乐91 | 四虎影剧院 | 亚洲一区二区高清 | 欧美色欧美亚洲高清在线观看 | 深夜在线免费观看 | 精品欧美高清一区二区免费 | 情趣色视频网站 |