首页 > 其他分享 >泛型对象的使用

泛型对象的使用

时间:2024-04-21 14:13:05浏览次数:27  
标签:对象 ObjectTest System value 使用 泛型 new null out

泛型对象的使用

package com.example.core.mydemo.java;

import java.util.Objects;

/**
 * output:
 * null
 * null
 * java.lang.Object@3b07d329
 * 0
 * java.lang.Object@41629346
 * 0
 * @param <T>
 */
public class ObjectTest<T> {
    public <T> String convertObjToStr(T value) {
        return Objects.isNull(value) ? null : value.toString();
    }

    public String convertObjToStr2(T value) {
        return Objects.isNull(value) ? null : value.toString();
    }

    public static void main(String[] args) {
        System.out.println(new ObjectTest().convertObjToStr(null));
        System.out.println(new ObjectTest().convertObjToStr2(null));

        System.out.println(new ObjectTest().convertObjToStr(new Object()));
        System.out.println(new ObjectTest().convertObjToStr2(new Integer(0)));

        System.out.println(new ObjectTest<Object>().convertObjToStr(new Object()));
        System.out.println(new ObjectTest<Integer>().convertObjToStr2(new Integer(0)));
    }
}

 

标签:对象,ObjectTest,System,value,使用,泛型,new,null,out
From: https://www.cnblogs.com/oktokeep/p/18148874

相关文章

  • 泛型模板化设计DEMO
    泛型模板化设计DEMO1.定义Result泛型类packagecom.example.core.mydemo.java.fanxing;publicclassResult<T>{Tresponse;publicTgetResponse(){returnresponse;}publicvoidsetResponse(Tresponse){this.response=res......
  • 泛型模板化设计使用-订单搜索接口
    泛型模板化设计使用-订单搜索接口1.定义订单搜索接口packagecom.example.core.mydemo.java.templateQuery;//暂不使用该接口//publicinterfaceSearchService<TextendsBaseRequest,FextendsBaseResponse>{publicinterfaceSearchService<T,F>{/***订单......
  • 【VMware vSphere】使用Managed Object Browser(MOB)浏览vSphere相关对象。
    ManagedObjectBrowser(MOB)是一个和vSphere(ESXi和vCenter)捆绑在一起的工具,可以直观的浏览或查询vSphere当中各种对象的信息,比如集群、主机以及虚拟机等。这些对象包含多个属性,我们可以通过这些属性了解相关对象的详细信息,比如对象的状态、配置以及结构等。同时,在不同的对象里,还可......
  • 面向对象设计介绍和代码示例
    面向对象设计(Object-OrientedDesign,OOD)是一种软件设计范式,它使用对象来表示数据和方法。面向对象设计原则是指导软件开发的一系列最佳实践,旨在提高代码的可维护性、可扩展性和可重用性。以下是几个核心的面向对象设计原则,以及它们的解释、应用场景和代码示例:1.单一职责原则(Si......
  • 对象传参、返回与接收的优化
    C++的编译器会给一个空的类提供六个函数默认构造函数析构函数拷贝构造拷贝赋值移动构造移动赋值在提供构造函数时,编译器将不再提供默认构造这些函数在对象传参、返回对象、接收对象时会自动调用,所以有必要进行相应的优化,减少这种隐式调用以下面这段代码为例:#include......
  • 深度解读《深度探索C++对象模型》之数据成员的存取效率分析(二)
    接下来我将持续更新“深度解读《深度探索C++对象模型》”系列,敬请期待,欢迎关注!也可以关注公众号:iShare爱分享,自动获得推文和全部的文章列表。接下来的几篇将会讲解非静态数据成员的存取分析,讲解静态数据成员的情况请见上一篇:《深度解读《深度探索C++对象模型》之数据成员的存取......
  • 使用代理绕过网站的反爬机制
    最近在尝试收集一些网络指标的数据,所以,我又开始做爬虫了。:)我们在做爬虫的过程中经常会遇到这样的情况,最初爬虫正常运行,正常抓取数据,一切看起来都是那么的美好,然而一杯茶的功夫可能就会出现错误,比如403Forbidden,这时候打开网页一看,可能会看到“您的IP访问频率太高”这......
  • vs code--AI编码助手(GitHub Copilot)安装使用
    GitHubCopilot是现在最流行的编程代码助手,现在介绍一下vscode安装使用过程。vscode选择扩展点击,输入Copilot,显示GitHubCopilot和GitHubCopilotChat。现在是默认一起装,装其中一个另外一个都会自动安装。 安装好需要登录GitHub 点击跳到GitHub网页界面 需要输入Dev......
  • openvas(GVM)安装和使用
    转自:https://blog.csdn.net/storm23/article/details/134898725openvas在10版本后,更名为GVMOpenVAS安装和使用一、参考二、环境三、安装Kali四、配置IP地址五、配置apt镜像源六、安装OpenVAS离线安装七、配置GVM离线上传特征库(攻击脚本、漏洞信息、gvm配置......
  • 使用ORPO微调Llama 3
    ORPO是一种新的微调技术,它将传统的监督微调和偏好对齐阶段结合到一个过程中。减少了训练所需的计算资源和时间。论文的实证结果表明,ORPO在各种模型大小和基准上都优于其他对齐方法,所以这次我们就来使用最新的Llama3来测试下ORPO的效果。我们将使用ORPO和TRL库对新的Llama38b......