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

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

Java泛型的使用示例

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

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

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 類來處理不同類型的數據。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 天天射日日干 | 亚洲图区综合 | 中文字幕亚洲综久久2021 | 精品午夜国产在线观看不卡 | 中文字幕一区在线播放 | 99久久免费看精品国产一区 | 大乳妇女bd视频在线观看 | 久久婷婷人人澡人人爱91 | 四虎永久免费地址ww417 | 日日干天天操 | 国产福利一区二区三区在线视频 | 看一级特黄a大一片 | 欧美综合精品一区二区三区 | 亚洲一区二区三区国产精品 | 日本高清毛片视频在线看 | 国产精品国语自产拍在线观看 | 一级黄网 | 欧美毛片又粗又长又大 | 91久久精一区二区三区大全 | 国产成人+亚洲欧洲 | 国产精品久久久久久久久久久不卡 | 色综合夜夜嗨亚洲一二区 | 国内精品久久久久激情影院 | 色猫咪av在线网址 | 67194在线午夜亚洲 | 久久这里只有精品8 | 国产精品综合网 | 免费爱爱的视频太爽了 | 色片在线看 | 色爱区综合 | 国产欧美精品一区二区三区–老狼 | 69一级毛片 | 看免费5xxaaa | 免费一级a毛片在线播 | 国产真实伦视频在线观看 | 天天干夜夜做 | 拍拍拍无挡视频免费观看1000 | 成人毛片免费观看视频 | 日本香蕉视频在线观看 | 日本不卡一区二区三区视频 | 亚洲精品久久一区影院 |