![Java与Android移动应用开发:技术、方法与实践](https://wfqqreader-1252317822.image.myqcloud.com/cover/659/26793659/b_26793659.jpg)
上QQ阅读APP看书,第一时间看更新
7.2 泛型方法
在方法中,同样可以使用泛型,下面的代码定义一个泛型方法,其功能是显示参数的类型信息。
![](https://epubservercos.yuewen.com/F132C1/15253386905235706/epubprivate/OEBPS/Images/Figure-P88_209874.jpg?sign=1739087498-173iBlQoQ49uQLyYmjOOGuGiOsJlqax9-0-2fc79538f4a20ad318fb8f4c346b9a8c)
![](https://epubservercos.yuewen.com/F132C1/15253386905235706/epubprivate/OEBPS/Images/Figure-P88_61098.jpg?sign=1739087498-6qEEhwLc9Nku55x3bV4L2OZNWLNTWYhv-0-899052e62a9b1a00c5fa79801275b2f3)
图7-2 使用泛型方法
代码执行结果如图7-2所示。
在m2()泛型方法的定义中,其返回值类型前使用“<”和“>”定义了类型标识。参数中使用了一个泛型参数,然后,在方法的内部,调用参数的getClass()方法获取其实际类型。接下来,通过getName()方法获取类型名称并显示。
接着,在CC类中添加一个泛型方法,如下面的代码(CC.java文件)所示。
![](https://epubservercos.yuewen.com/F132C1/15253386905235706/epubprivate/OEBPS/Images/Figure-P88_209875.jpg?sign=1739087498-xqv7eKBsY6yJUGfP8ZKDlz4AwUPFUeGu-0-4b30913bdb9a2d13799df050eb3f1b5b)
代码中,定义了inList()泛型方法,它的功能是判断第一个参数是否在从第二个参数开始的数据列表中。开发中,可以通过类似下面的代码使用inList()方法。
![](https://epubservercos.yuewen.com/F132C1/15253386905235706/epubprivate/OEBPS/Images/Figure-P89_209876.jpg?sign=1739087498-3S2ZrelniNWuGzW8M5WA6pvnLILIuHCS-0-83192a7cce2edbfc3696b30490f52f43)
代码执行结果如图7-3所示。
![](https://epubservercos.yuewen.com/F132C1/15253386905235706/epubprivate/OEBPS/Images/Figure-P89_61559.jpg?sign=1739087498-l13Lj8iZJkarbXlIjfhyxS22FsBMC7U1-0-9df976f8c4a39cba859e2799b56d0ce1)
图7-3 封装CC.inList()泛型方法