关于范型介绍的最后一部分是范型方法。

有时候我们并不是整个类都需要参数类型,而只是一个特定的方法需要。

比如我们有这样一样方法:


容易知道,这个方法的作用就是把多个int值放入一个堆栈里,但是目前我们只能放入int值,就像这样:

范型方法Stack<int> stack = new Stack<int>();
范型方法PushMultiple(stack, 
1234);
范型方法

当然现在我们只能放入整型,根据前面对范型的介绍,我们容易想到把Stack<int>写成Stack<T>就可以接受参数类型了,所以我们就把方法改为范型方法:


如果我们想用这个范型方法达成前面的方法的效果,就这样用:

范型方法Stack<int> stack = new Stack<int>();
范型方法PushMultiple
<int>(stack, 1234);
范型方法

当然,现在我们已经不局限于放入int值到堆栈里了,你可以指定自己需要的类型,可重用性就更高了。

其实我们的编译器还可以更聪明一点,它使用了一种叫type inferencing的操作,根据我们提供的方法的参数的类型来推演出方法的参数类型,也就是说,我们上面的例子可以写成这样:

范型方法Stack<int> stack = new Stack<int>();
范型方法PushMultiple(stack, 
1234);
范型方法

相关文章:

  • 2023-04-01
  • 2021-10-02
  • 2022-01-24
  • 2021-06-12
  • 2021-10-13
  • 2021-06-24
  • 2021-12-05
  • 2021-10-18
猜你喜欢
  • 2021-06-09
  • 2021-05-20
  • 2021-07-16
  • 2021-10-05
  • 2021-10-08
相关资源
相似解决方案