当前位置: 首页 > news >正文

网站免费建站系统京东官方网上商城

网站免费建站系统,京东官方网上商城,德阳市做网站,织梦企业网站源码Java基础之泛型 一、泛型应用范围二、使用泛型方法三、泛型类 一、泛型应用范围 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 使用 Java 泛型的概念,我们可以写一个泛型方法来对一个对象数组排序。然后,调…

Java基础之泛型

  • 一、泛型应用范围
  • 二、使用泛型方法
  • 三、泛型类

一、泛型应用范围

泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。

使用 Java 泛型的概念,我们可以写一个泛型方法来对一个对象数组排序。然后,调用该泛型方法来对整型数组、浮点数数组、字符串数组等进行排序

二、使用泛型方法

  • 在方法的返回类型之前声明类型参数: 泛型方法的类型参数声明应该在方法的返回类型之前,使用尖括号括起来。
public <T> void methodName(T parameter) {// 方法实现
}
  • 使用泛型类型参数: 在方法的参数列表、返回类型或方法体中,可以使用泛型类型参数来表示参数类型或返回类型
public <T> T someMethod(T input) {// 方法实现return input;
}
  • 类型参数可以有任意名称: 泛型方法中的类型参数可以使用任意合法的标识符名称。通常,使用单个大写字母(如 TEKV 等)表示类型参数是一种常见的惯例。
public <E> void processElement(E element) {// 方法实现
}
  • E - Element (在集合中使用,因为集合中存放的是元素)
  • T - Type(Java 类)
  • K - Key(键)
  • V - Value(值)
  • N - Number(数值类型)
  • - 表示不确定的 java 类型
  • 泛型方法可以有多个类型参数: 泛型方法可以有多个类型参数,这些参数在尖括号中逗号分隔。
public <T, U> void processPair(T first, U second) {// 方法实现
}
  • 类型参数的范围(bounded type parameters): 类型参数可以被限制为某个特定的类或接口,以确保方法能够使用特定类型的方法或属性。这称为类型参数的边界。
public <T extends Number> void processNumber(T number) {// 方法实现
}
  • 泛型方法可以在泛型类或非泛型类中定义: 泛型方法不一定要在泛型类中定义,它可以在普通类中定义,或者在泛型类中定义,或者在接口中定义。
// 在普通类中定义泛型方法
public class MyClass {public <T> void myMethod(T parameter) {// 方法实现}
}// 在泛型类中定义泛型方法
public class MyGenericClass<T> {public <U> void myMethod(U parameter) {// 方法实现}
}// 在接口中定义泛型方法
public interface MyInterface {<T> void myMethod(T parameter);
}

代码示例

public class GenericMethodExample {// 泛型方法,接受任意类型的数组并打印public <T> void printArray(T[] array) {for (T element : array) {System.out.print(element + " ");}System.out.println();}// 泛型方法,接受任意类型的参数并返回public <T> T identity(T input) {return input;}// 泛型方法,使用类型参数的边界public <T extends Number> double square(T number) {return Math.pow(number.doubleValue(), 2);}public static void main(String[] args) {GenericMethodExample example = new GenericMethodExample();// 调用泛型方法,传入不同类型的数组Integer[] intArray = {1, 2, 3, 4, 5};Double[] doubleArray = {1.1, 2.2, 3.3, 4.4, 5.5};String[] stringArray = {"one", "two", "three", "four", "five"};System.out.println("Integer Array:");example.printArray(intArray);System.out.println("Double Array:");example.printArray(doubleArray);System.out.println("String Array:");example.printArray(stringArray);// 调用泛型方法,传入不同类型的参数String result1 = example.identity("Hello");Integer result2 = example.identity(123);System.out.println("Identity Result 1: " + result1);System.out.println("Identity Result 2: " + result2);// 使用类型参数的边界double squareResult = example.square(4);System.out.println("Square Result: " + squareResult);}
}

三、泛型类

泛型类的声明和非泛型类的声明类似,除了在类名后面添加了类型参数声明部分。

和泛型方法一样,泛型类的类型参数声明部分也包含一个或多个类型参数,参数间用逗号隔开。一个泛型参数,也被称为一个类型变量,是用于指定一个泛型类型名称的标识符。因为他们接受一个或多个参数,这些类被称为参数化的类或参数化的类型。

代码示例

public class Box<T> {private T t;public void add(T t) {this.t = t;}public T get() {return t;}public static void main(String[] args) {Box<Integer> integerBox = new Box<Integer>();Box<String> stringBox = new Box<String>();integerBox.add(new Integer(10));stringBox.add(new String("学生数据"));System.out.printf("整型值为 :%d\n\n", integerBox.get());System.out.printf("字符串为 :%s\n", stringBox.get());}
http://www.yayakq.cn/news/649894/

相关文章:

  • 陕西住房建设厅考试官方网站西安seo工作室
  • 产品单页营销型网站模板下载山东省住房和城乡建设厅官网查询
  • 手机网站规划石家庄红酒公司 网站建设
  • 无锡商业网站建设让别人做网站推广需要多少钱
  • app和手机网站百度在成都有分公司吗
  • 网页游戏网站排名网络规划设计师大纲是不是变了
  • 做视频网站带宽不够怎么办wordpress标签墙
  • 网站设计和网页设计一样吗网页设计网站网站建设课程设计
  • 百度搜索不到asp做的网站免费的ppt制作软件
  • 深圳分销网站设计公司对电子商务网站设计的理解
  • 广西新宇建设项目有限公司网站竞猜网站开发
  • 网站备案名可以更改吗佛山网站企业
  • 网站建设包含美工建设银行上海分行招聘网站
  • 网站推广的主题自己做电商网站
  • 鞍山市城乡建设局网站英文企业网站建设
  • 营销型科技网站建设中企动力企业邮箱手机邮箱
  • 上海知名建站公司虚拟主机wordpress不能用
  • 白人与黑人做爰网站网页广告怎么关闭
  • 腾讯云快速搭建网站空调维修网站模板
  • 企业网站快速排名centos wordpress安装教程
  • 天津建设部网站深圳市注册公司流程图
  • 建网站能上传多少数据大数据营销心得体会
  • 江苏省建设执业网站遂宁模板建站公司
  • 网站首页图片不清楚设置字体颜色的网站
  • 云端智能建站系统梧州网站建设2k9网络团队提供高品质网站建设服务
  • 一流高职院校建设工作网站成功的网络营销事件有哪些
  • 用户体验网站泰州建站价格
  • 动易学校网站烟台网络科技有限公司
  • 青岛做网站哪里好铜陵seo公司
  • 做网站前期构架图免费网络爬虫网站