Java基础类型的判断

java中没有sizeof()运算符来大概判断数据的类型,但可以通过instanceof运算符判断是否是基本类型对应的包装类的实例来判断基础类型,话不多说上代码

下面是一个判断基础类型的类。

复制代码
 1 public class BaseTypeDistinguish {
 2     public static String baseTypeDistinguish(Object o) {
 3         if (o instanceof Boolean) {
 4             return "boolean";
 5         } else if (o instanceof Character) {
 6             return "character";
 7         } else if (o instanceof Byte) {
 8             return "byte";
 9         } else if (o instanceof Short) {
10             return "short";
11         } else if (o instanceof Integer) {
12             return "integer";
13         } else if (o instanceof Long) {
14             return "long";
15         } else if (o instanceof Float) {
16             return "float";
17         } else if (o instanceof Double) {
18             return "double";
19         }
20         return "not base type";
21     }
22     public static void baseTypeDistinguishPrint(Object o) {
23         System.out.print(o+" ");
24         System.out.println("This type is "+BaseTypeDistinguish.baseTypeDistinguish(o));
25     }
26 }
复制代码

 

System.out.println('你'+'好');
System.out.println("你"+"好");

你觉得这两句的输出结果会是什么呢 ~笑

附上两个参考文档

  JAVA基本数据类型及其对应的包装类 这篇文章有关基础类型写的很详细

  java判断基本数据类型的方法 这里的代码有点乱

 

另外,可以实例还可以通过getClass()方法获取类名

    public static String baseTypeDistinguishByGetClass(Object o) {
        return o.getClass().getTypeName();
    }
    public static void baseTypeDistinguishByGetClassPrint(Object o) {
        System.out.print(o+" ");
        System.out.println("This type is "+BaseTypeDistinguish.baseTypeDistinguishByGetClass(o));
    }

参考 java获取变量的类型

 

char类型的变量做加减运算会自动转成int型,而字符串的+运算则是拼接了。所以用' '与" "的两个输出是一个是int型一个是String类型的了。

 

posted @   康舒服冰红茶  阅读(2046)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示