专栏首页闻道于事Java之数字处理类浅析

Java之数字处理类浅析

包装类:

数据类型相对的包装类: byte---Byte short---Short int---Integer long---Long

float---Float double---Double

boolean---Boolean

char---Character

为什么要有包装类型?

包装类把基本类型数据转换为对象 :是因为Java是一个面向对象的语言,基本类型并不具有对象的性质,为了与其他对象“接轨”就出现了包装类型(如我们在使用集合类型Collection时就一定要使用包装类型而非基本类型),它相当于将基本类型“包装起来”,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基本类型的操作。

包装类的作用:1.提供了一系列实用的方法

       2.集合不允许存放基本数据类型数据,存放数字时,要用包装类型

Integer类为例子介绍包装类的实际使用:

  1、实现int和Integer类之间的转换

                   //在实际转换时,使用Integer类的构造方法和Integer类内部的intValue方法实现这些类型之间的相互转换,实现的代码如下:
                   int n = 10;
                   Integer in = new Integer(100);
                   //将int类型转换为Integer类型
                   Integer in1 = new Integer(n);
                   //将Integer类型的对象转换为int类型
                   int m = in.intValue();    

 2.Integer类内部的常用方法

parseInt方法:将数字字符串转换为int数值。

String s = “123”;
int n = Integer.parseInt(s);

public static int parseInt(String s, int radix):将字符串按照参数radix指定的进制转换为int。

//将字符串”120”按照十进制转换为int,则结果为120
int n = Integer.parseInt(“120”,10);
//将字符串”12”按照十六进制转换为int,则结果为18
int n = Integer.parseInt(“12”,16);
//将字符串”ff”按照十六进制转换为int,则结果为255
int n = Integer.parseInt(“ff”,16);

toString方法:将int类型转换为对应的String类型

 int m = 1000;
 String s = Integer.toString(m);
// 则字符串s的值是”1000”。

public static int parseInt(String s, int radix):将int值转换为特定进制的字符串

        int m = 20;
        String s = Integer.toString(m,2);
        System.out.println(s);
        //将20z转换为二进制的结果是10100    

JDK自从1.5(版本以后,就引入了自动拆装箱的语法,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行。

        int m = 12;
        Integer in = m;
        //Integer类型会自动转换为int类型
        int n = in;
            //数字处理类
            //每种数据类型的最大最小值
            System.out.println(Integer.MIN_VALUE);
            System.out.println(Integer.MAX_VALUE);
            System.out.println(Byte.MIN_VALUE);
            System.out.println(Byte.MAX_VALUE);
            System.out.println(Long.MIN_VALUE);
            System.out.println(Long.MAX_VALUE);
            System.out.println(Short.MIN_VALUE);
            System.out.println(Short.MAX_VALUE);

            System.out.println(Float.MIN_VALUE);
            System.out.println(Float.MAX_VALUE);
            System.out.println(Double.MIN_VALUE);
            System.out.println(Double.MAX_VALUE);

对于包装类说,这些类的用途主要包含两种:

                   a、作为和基本数据类型对应的类类型存在,方便涉及到对象的操作。

                   b、包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。

包装类型与基本类型异同

1.声明方式不同,基本类型不适用new关键字,而包装类型需要使用new关键字来在堆中分配存储空间;

2.存储方式及位置不同,基本类型是直接将变量值存储在堆栈中,而包装类型是将对象放在堆中,然后通过引用来使用;

3.初始值不同,基本类型的初始值如int为0,boolean为false,而包装类型的初始值为null

4.使用方式不同,基本类型直接赋值直接使用就好,而包装类型在集合如Collection、Map时会使用到

其他:

声明一个数组:

int ints[] = new int[3];

new代表在内存中新开辟一块区域

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Spring框架(三) JDBCTemplate,声明式事务,自动装载(注解)

     JDBCTemplate 按照标准正常项目的结构 结构图: ? model层 dao层 实现  dao:(DateBase Access Object) 数据...

    二十三年蝉
  • cors解决Web跨域访问问题

    首先了解一下什么是跨域以及解决的几种常见方式。 跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器施加的安全限制。 所谓同源是指,...

    二十三年蝉
  • MyBatis框架(二)

    导包, 配置mybatis的总配置文件: mybatis-config.xml, 1 <?xml version="1.0" encoding="UTF-8"...

    二十三年蝉
  • 有关JAVA自动装箱-拆箱的分析

    在java常量与常量池 中已经介绍过一些java自动装箱与拆箱的例子。现在单独对自动装箱/拆箱进行总结。

    冬天里的懒猫
  • 一个根据双色球历史数据预测未来中奖号码的Java程序

    Jerry Wang
  • 【002期】JavaSE面试题(二):基本数据类型与访问修饰符

    大家好,我是Java面试题库的提裤姐,今天这篇是JavaSE系列的第二篇,主要总结了Java基础语法中访问修饰符会出现的相关面试题,在后续,会沿着第一篇开篇的知...

    java进阶架构师
  • 聊聊面试-int和Integer的区别

    最近面试了很多候选人,发现很多人都不太重视基础,甚至连工作十几年,项目经验十几页的老程序员,框架学了一大堆,但是很多 Java 相关的基础知识却很多都答不上来。...

    phoenix.xiao
  • Integer的自动拆装箱的陷阱(整型数-128到127的值比较问题)

    Java里面对处在在-128127之间的Integer值,用的是原生数据类型int,会在内存里供重用,也就是说这之间的Integer值进行==比较时只是进行in...

    一个会写诗的程序员
  • Java基本数据类型的包装类

    Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计...

    用户5224393
  • Java高并发之无锁与Atomic源码分析

    用户1216491

扫码关注云+社区

领取腾讯云代金券