Java最难的语法<泛型>

简介: Java最难的语法<泛型>

时间过得很快,我们马上就进入了,Java最难语法的学习,加油吧!

1.包装类

想要学好泛型就要了解包装类。

在Java中,由于基本类型不是继承自Object,为了在泛型代码中可以支持基本类型,Java给每个基本类型都对应了一个包装类。

除了 Integer 和 Character, 其余基本类型的包装类都是首字母大写。

1.2 装箱和拆箱

public static void main(String[] args) {
         int a = 10;
         Integer aa = a; //装箱
         Integer b = 20;
         int bb = b;     //拆箱  
     }

这是一种自动 装箱/拆箱 。

装包:把一个基本类型转变为包装类型。

拆包:把一个包装类型转变为基本类型。

也有手动 装箱/拆箱。

int a = 10;
Integer aa = Integer.valueOf(a); //装箱
Integer b = new Integer(20);
int bb = b.intValue();     //拆箱

两者基本一样,在底层都是调用的同一个方法。

2.泛型

2.1什么是泛型

泛型是在JDK1.5引入的新的语法,通俗讲,泛型:就是适用于许多类型。从代码上讲,就是对类型实现了参数化。

2.2语法

class 泛型类名称<类型形参列表> {

     // 这里可以使用类型参数

}

代码示例

class MyArray<T> {
    public T[]array = (T[]) new Object[10];
    public void setval(int pos,T val){
        array[pos] = val;
    }
    public T getval(int pos){
        return array[pos];
    }
}
public class Main {
    public static void main(String[] args) {
         MyArray<String> myArray = new MyArray<String>();
         myArray.setval(1,"hello");
         myArray.setval(2,"bit");
         String str = myArray.getval(1);
         System.out.println(str);
         MyArray<Integer> myArray1 = new MyArray<>();
         myArray1.setval(0,1);
         int val = myArray1.getval(0);
        System.out.println(val);
    }
}

泛型的意义

  • 1.在编译的时候检查数据类型是否正确
  • 2.在编译的时候帮助进行类型转换

2.3泛型类的使用

泛型类<类型实参> 变量名; // 定义一个泛型类引用

new 泛型类<类型实参>(构造方法实参); // 实例化一个泛型类对象

示例

MyArray<Integer> list = new MyArray<Integer>();

注意:泛型只能接受类,所有的基本数据类型必须使用包装类!

 

目录
相关文章
|
11小时前
|
缓存 安全 Java
Java 语法 (杂七杂八的知识)
Java 语法 (杂七杂八的知识)
18 9
|
1天前
|
存储 Java 编译器
解析Java中的包装类和泛型
解析Java中的包装类和泛型
|
1天前
|
Java 编译器
Java初识泛型 | 如何通过泛型类/泛型方法实现求数组元素最大值?
这是一个关于如何使用泛型在Java中找到数组中最大值的问题。
14 3
|
1天前
|
Java
Java初识泛型 | 如何通过泛型类/泛型方法获取任意类型的三个数的最大值?
本文介绍了如何使用Java中的泛型来实现一个可以比较任意数值类型最大值的功能。。
12 2
|
4天前
|
存储 Java 开发者
Java语言基础语法详解
Java语言基础语法详解
|
4天前
|
存储 安全 Java
Java泛型:原理、应用与深入解析
Java泛型:原理、应用与深入解析
|
5天前
|
机器学习/深度学习 安全 Java
Java 泛型
5月更文挑战第17天
|
5天前
|
安全 Java 编译器
Java的泛型
Java的泛型
16 1
|
6天前
|
存储 安全 Java
【JAVA学习之路 | 进阶篇】<-泛型->
【JAVA学习之路 | 进阶篇】<-泛型->
|
8天前
|
安全 Java 编译器
Java一分钟之——泛型方法与泛型接口
【5月更文挑战第20天】Java泛型提供编译时类型安全检查,提升代码重用和灵活性。本文探讨泛型方法和接口的核心概念、常见问题和避免策略。泛型方法允许处理多种数据类型,而泛型接口需在实现时指定具体类型。注意类型擦除、误用原始类型和泛型边界的理解。通过明确指定类型参数、利用通配符和理解类型擦除来避免问题。泛型接口要精确指定类型参数,适度约束,利用默认方法。示例代码展示了泛型方法和接口的使用。
35 1
Java一分钟之——泛型方法与泛型接口