精华内容
下载资源
问答
  • 2019-11-05 16:50:47

    只返回泛型实体

    public static <T> T request2Bean(HttpServletRequest request,Class<T> clazz){}
    

    集合泛型

    public <T> List<T> lists(QueryBuilder build, TransportClient client, Class<T> clazz) {}
    
    更多相关内容
  • 下面小编就为大家带来一篇JAVA利用泛型返回类型不同的对象方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • JAVA泛型是jdk1.5引入的一个新特性,本质是参数化类型,把类型作为参数传递 常见的有:泛型类、泛型接口、泛型方法 语法:<T,...>T表示类型占位符,表示一种应用类型 好处1、提高代码重用。2、防止类型转换...
    • JAVA泛型是jdk1.5引入的一个新特性,本质是参数化类型,把类型作为参数传递
    • 常见的有:泛型类、泛型接口、泛型方法
    • 语法:<T,...>T表示类型占位符,表示一种应用类型
    • 好处1、提高代码重用。2、防止类型转换异常,提高代码安全性。

    1、泛型类

    2、泛型接口

    3、泛型方法

    //泛型类
    //类名<T>,T是占位符,表示一种引用类型,可以多个
    //不同类型泛型对象不能相互复制
    class MyGeneric<T> {
        //使用泛型
        T t;
        //泛型作为方法的参数
        public void show(T t){
    //        T t1 = new T();   //不能实例化
            System.out.println(t);
        }
        //泛型作为方法的返回值
        public T getT(){
            return t;
        }
    }
    
    //泛型接口
    //接口名<T>
    interface MyInterface<T>{
        String name = "张三";
        T server(T t);
    }
    //实现时泛型类型确定
    class MyInterfaceClass implements MyInterface<String>{
        @Override
        public String server(String t) {
            System.out.println(t);
            return t;
        }
    }
    //实现时泛型类型不确定
    class MyInterfaceClass2<T> implements MyInterface<T>{
        @Override
        public T server(T t) {
            System.out.println(t);
            return t;
        }
    }
    
    //泛型方法
    //<T> 返回值类型
    class TestGenericMethod{
        //泛型方法
        public <T> void show(T t){
            System.out.println("泛型方法"+t);
        }
    }
    public class TestGeneric {
        public static void main(String[] args) {
            //创建泛型类对象
            MyGeneric<String> myGeneric = new MyGeneric<String>();
            myGeneric.t = "hello";
            System.out.println(myGeneric.getT());
            myGeneric.show("aaaaa");
    
            MyGeneric<Integer> myGeneric2 = new MyGeneric<Integer>();
            myGeneric2.t = 10;
            myGeneric2.show(200);
            System.out.println(myGeneric2.getT());
    
            //实现泛型接口
            MyInterfaceClass myInterfaceClass = new MyInterfaceClass();
            myInterfaceClass.server("aaaaaaaaaaa");
            MyInterfaceClass2<String> stringMyInterfaceClass2 = new MyInterfaceClass2<>();
            stringMyInterfaceClass2.server("aaaaaa");
    
            //泛型方法
            TestGenericMethod testGenericMethod = new TestGenericMethod();
            testGenericMethod.show("aaaa");
            testGenericMethod.show(111);
            testGenericMethod.show(new Student("aaa",19));
    
    
        }
    }

    泛型集合

    参数化类型、类型安全的集合。强制集合的元素的类型必须一致

    特点

    • 编译时即可检查,非运行时抛出异常
    • 访问时不必类型转换
    • 不同泛型之间引用不能相互赋值,泛型不存在多态
    展开全文
  • 关于Java泛型的基本用法就不多说了,主要是一个编译期的检查,也避免了我们代码中的强制转换,比较经典的用法有泛型DAO,泛型Page的DTO。现在我要说的是一个挺有趣但是貌似还不是太多的人在代码中使用的方法,前段...

    关于Java泛型的基本用法就不多说了,主要是一个编译期的检查,也避免了我们代码中的强制转换,比较经典的用法有泛型DAO,泛型Page的DTO。

    现在我要说的是一个挺有趣但是貌似还不是太多的人在代码中使用的方法,前段时间用guava和op4j的时候发现这样的用法,看看了源码,也是很简单的。

    比如guava中创建集合的方法 List list = Lists.newArrayList(),这个代替了我们传统的 new ArrayList,为什么在=的右边不需要泛型了呢,我们看看源码。

    public static ArrayList newArrayList() {

    return new ArrayList();

    }

    返回类型中带有泛型E,并且这个泛型的来源在 static和 ArrayList之间的位置,我自己的理解是这个就和=左边的一致,可能说的不够专业但是意思应该就这样。

    于是我就依样画葫芦在自己的代码中也用了起来。

    我要做的是一个仿httpsession机制的自定义协议是session。在httpsession.getAttribute方法返回的是一个Object,然后我们再类型转换。现在我用返回类型泛型来优化这个代码,以下是我自定义协议session的getAttribute的代码。

    @SuppressWarnings("unchecked")

    public E getAttribute(String key) {

    return (E) map.get(key);

    }

    调用代码Boolean isFirst = session.getAttribute("first");

    在httpsession中我们则要这么写Boolean isFirst = (Boolean)session.getAttribute("first");

    泛型的用法还有很多,有新的心得再补充更新

    展开全文
  • Java返回泛型方法-实例

    千次阅读 2021-02-12 10:31:07
    import java.io.UnsupportedEncodingException;import java.lang.reflect.Type;import java.net.URLEncoder;import java.util.LinkedList;import java.util.List;public class App {private s...

    package com.frank.app;

    import java.io.UnsupportedEncodingException;

    import java.lang.reflect.Type;

    import java.net.URLEncoder;

    import java.util.LinkedList;

    import java.util.List;

    public class App {

    private static List demo1(Class clazz) {

    T obj = null;

    try {

    obj = clazz.newInstance();

    } catch (InstantiationException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (IllegalAccessException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    List result = new LinkedList();

    result.add(obj);

    return result;

    }

    public static void main(String[] args) {

    List list = demo1(String.class);

    System.out.println(list);

    }

    ---------------------

    作者:刘少明

    来源:CSDN

    原文:https://blog.csdn.net/lsm135/article/details/54141309

    版权声明:本文为博主原创文章,转载请附上博文链接!

    java&period;lang&period;System&period;setProperty&lpar;&rpar;方法实例

    java.lang.System.setProperty() 方法设置指定键指定的系统属性. 声明 以下是java.lang.System.setProperty()方法的声明 public stat ...

    Java&period;io&period;ObjectOutputStream&period;writeObject&lpar;&rpar;方法实例

    java.io.ObjectOutputStream.writeObject(Object obj) 方法将指定对象写入ObjectOutputStream.该对象的类,类的签名,以及类及其所有超类型 ...

    【java】Java&period;math&period;BigDecimal&period;subtract&lpar;&rpar;方法实例

    java.math.BigDecimal.subtract(BigDecimal subtrahend) 返回一个BigDecimal,其值为 (this - subtrahend), 精度为 max ...

    Java构造方法与析构方法实例剖析

    Java构造方法 类有一个特殊的成员方法叫作构造方法,它的作用是创建对象并初始化成员变量.在创建对象时,会自动调用类的构造方法. 构造方法定义规则:Java 中的构造方法必须与该类具有相同的名字,并且 ...

    Java中泛型的运用实例

    package example6; import java.util.ArrayList;import java.util.HashMap;import java.util.HashSet;impor ...

    java遍历泛型的方法

    一.List遍历 Java中List遍历有三种方法来遍历泛型,主要为: 1.for循环遍历 2.iterator遍历 3.foreach遍历 package com.gmail.lsgjzhuwei; ...

    java&period;lang&period;Boolean&period;compareTo&lpar;&rpar;方法实例

    compareTo接口 Comparable指定以下接口 参数 b - 布尔实例进行比较 返回值 方法返回 0 - 如果该对象表示相同的布尔值作为参数 一个正数值 - 如 ...

    将java中数组转换为ArrayList的方法实例(包括ArrayList转数组)

    方法一:使用Arrays.asList()方法   1 2 String[] asset = {"equity", "stocks", "gold&q ...

    随机推荐

    Syntactic&lowbar;sugar

    https://en.wikipedia.org/wiki/Syntactic_sugar http://stackoverflow.com/questions/11366006/mysql-on-v ...

    查看SQL语句执行时间

    DBCC FREEPROCCACHE;SET STATISTICS PROFILE ON SET STATISTICS IO ON SET STATISTICS TIME ON go--SQL开始** ...

    关于线程池ThreadPool的学习

    学习重点ThreadPool.SetMinThreads(out workerThreads, out completionPortThreads).这是整个线程池的关键.  而ThreadPool. ...

    MVC4商城项目一:框架设计

    代码已托管在  https://code.csdn.net/denghao156/ktnmb_mvc4 先上图,设计模式参考:ddmvc4.codeplex.com 一.unintofwork  设计 ...

    &lpar;转&rpar;openURL的使用方法

    view plaincopy to clipboardprint? [[UIApplication sharedApplication] openURL:[NSURL URLWithString:ap ...

    解决centos网速特别慢的最佳解决办法

    摘自:http://www.centoscn.com/CentosBug/osbug/2014/0614/3138.html 我使用了centOS,但是发现网速实在是卡得几乎不能上网,连百度都打不开, ...

    BZOJ&lowbar;1878&lowbar;&lbrack;SDOI2009&rsqb;HH的项链&lowbar;莫队

    BZOJ_1878_[SDOI2009]HH的项链_莫队 Description HH有一串由各种漂亮的贝壳组成的项链.HH相信不同的贝壳会带来好运,所以每次散步 完后,他都会随意取出一 段贝壳,思考 ...

    Linux基础知识第二讲&comma;文件目录命令使用

    目录 一丶Linux终端使用技巧. 1.自动补全 Tab技巧. 2.使用输入过的命令 二丶Linux 目录知识 1.linux目录的特点 2.ls 隐藏文件的查看 3.ls 常用选项 4.通配符的配合 ...

    jenkins使用3----相关工具安装

    一.相关工具安装 a.git安装 #yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc-c++ ...

    Java 实现String语句的执行(Jexl)

    https://www.jianshu.com/p/1000719e49fa 1.maven 导入库 org.apache.comm ...

    展开全文
  • 展开全部泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以62616964757a686964616fe78988e69d8331333264656165按类型进行参数化的类。可以把类型参数看作是使用参数化类型时指定...
  • java集合泛型

    千次阅读 2022-03-07 19:46:43
    常见的形式由泛型类,泛型方法泛型接口 语法:<T…>T称为类型占位符,表示一种引用类型。 好处: 提高代码的重用性 防止类型转换异常,提高代码的安全性。 3)规范类型 泛型的分类 泛型类 package ...
  • 泛型的限制二、集合概述1.集合框架2.迭代器接口三、集合类1.Collection接口2.List 接口及其实现类3.Set 接口及其实现类4.Queue 接口及其实现类5.Map 接口及其实现类四、集合转换(了解)五、集合工具类(了解)后期...
  • Java集合-泛型

    2021-12-25 17:12:10
    集合来举例,使用泛型的好处是我们不必因为添加元素类型的不同而定义不同类型的集合,如整型集 合类,浮点型集合类,字符串集合类,我们可以定义一个集合来存放整型、浮点型,字符串型数据,而 这并不是最重要的...
  • 我得到的是接口不使用ArrayList的任何泛型类型参数(即ArrayList),但是接口方法的实现者(即ArrayList).其他实现者可以使用任何其他类型参数返回ArrayLists,不是吗? 所以我的问题:这是一个问题吗?我应该重构一下吗...
  • 有没有办法了解从泛型类调用的方法返回什么类型?有一个例子:Generified generified = new Generified();Method method = generified.getClass().getMethod("getDoubleValue");Class> returnType = ........好...
  • Java----泛型集合

    千次阅读 2022-03-14 19:05:12
    Java----泛型与集合一、泛型二级目录三级目录 一、泛型 1、泛型的安全机制 泛型作用:强制了集合存储固定的数据类型 2、书写格式 //集合类<> 3、泛型的好处 ①安全性提高了 ②程序代码量减少 ③避免了强制...
  • 方法返回值前的的左右是告诉编译器,当前的方法的值传入类型可以和类初始化的泛型类不同,也就是该方法泛型类可以自定义,不需要跟类初始化的泛型类相同
  • 7 个答案:答案 0 :(得分:27)看起来您想要调整Josh Bloch所谓的Typesafe异类容器模式:您传递的是类型标记Class,并且您想要返回List。普通的旧THC可以以类型安全的方式将Class映射到T,但由于您实际上想要List,...
  • Java反射--获取类方法泛型返回泛型参数 一.测试类 public class Test02 { public void parameterTest(Map<Integer, Dog> map){ } public Map<Integer,Dog> returnTest(){ return new ...
  • Java_泛型集合的定义及使用

    千次阅读 2020-06-21 11:18:49
    泛型集合的定义及使用 引入 什么是泛型、为什么要引入泛型、泛型类和泛型方法的使用 实例泛型: ​ 创建对象时,为类所定义的泛型,进行参数化赋值。 类:创建对象时,为类所定义的泛型,进行参数化赋值 接口:...
  • 方法入参泛型与类泛型一致并且方法没有标注返回泛型,则要求方法的泛型必须与类泛型一致;如下: 分别入参与泛型指定的一致与不一致情况,表明:如果入参泛型非类指定泛型则编译异常,子类与实现类不受影响,视为...
  • 1. 泛型方法 MyGenericMethod.java package generic; public class MyGenericMethod { /** * MethodName: show * Description: 泛型方法, 用于展示任意类型的数据 * * @return void * @date 2021/8/9 20:34...
  • 泛型(Generic type 或者 generics)是对Java语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。可以在集合框架(Collection framework)中看到泛型的动机。例如,Map 类允许您向一个 Map 添加任意类的...
  • 表示本方法持有一个不确定类型T,表示本方法是一个泛型方法 T 返回值类型为T类型的对象 Class clazz:只有通过反射才能拿到泛型T的对象,因为方法运行时才知道泛型的真正类型 throws IllegalAccessException, ...
  • java---集合泛型

    2022-02-01 16:31:43
    Java集合像是一个容器,专门用于存放对象的引用,这些对象可以是任意的数据类型,并且长度可变,其中这些集合都处于java.util的包中 集合按照其存储结构可以分为两大类:单列集合Collection和双列集合Map 单列...
  • 集合 数组和集合的元素存储个数问题 数组定义后类型确定,长度固定 集合类型可以不固定,大小是可变的 数组和集合存储元素的类型问题 数组可以存储基本类型和引用类型的数据 集合只能存储引用类型的数据 数组和...
  • 本程序包含泛型的求最大值方法返回重复数组列表方法、二分查找法。 泛型--返回最大值: //泛型--返回最大值 /* 对象A.compareTo(对象B)返回值: 如果A<B,值小于0;如果A=B,值等于0;如果A>B,值大于0 ...
  • 泛型典型的使用场景是集合。考虑到大多数情况下集合是同质的(同一类型),通过...声明方法返回子类型在Spring Security的源码里有一个ProviderManagerBuilder接口,声明如下public interface ProviderManagerBuilder&...
  • Java 泛型集合知识点总结 泛型 泛型的应用 在编译时通过一个标识表示类中某个 属性/方法/参数 的类型 编译时,检查添加元素的类型,提高安全性 减少类型转换的次数,提高效率 泛型的语法 1.泛型的声明 泛型类 ...
  • Java系列8 泛型

    2021-02-27 16:32:17
    语法糖(Syntactic Sugar)在计算机语言中添加某种语法,这种语法对语言的功能并没有影响,但更方便程序员使用Java中常用的语法糖主要有泛型、变长参数、条件编译、自动拆装箱、内部类等虚拟机并不支持语法糖,会在...
  • 在此示例中,您将学习如何创建泛型集合。使用泛型集合,您可以定义存储在集合中的对象的类型。在大多数情况下,使用集合时,您会在其中存储相同类型的对象。因此,如果您知道要存储在集合中的内容以及在尝试从其中...
  • 、List的区别泛型中的型变(协变、逆变、不可变)1. 什么是型变2. 什么是协变(Covariance)3. 什么是逆变(Contravariance)4. 不可变性(Invariance) 首先需要聊一下关于List、List<?>、List的区别 泛型中的型变(协...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 77,182
精华内容 30,872
关键字:

java方法返回泛型集合

java 订阅