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 条评论
登录 后参与评论

相关文章

来自专栏xiaoxi666的专栏

【非原创】C++类成员函数的重载、覆盖和隐藏

B、重载是指派生类函数覆盖基类函数,函数相同,参数相同,基类函数必须有virtual关键字

10220
来自专栏有趣的django

2.python数据类型

字符串(string) 1.字符串常用功能 name = 'derek' print(name.capitalize()) #首字母大写 Derek ...

30850
来自专栏老九学堂

想要Java高薪,必须掌握这些基础知识点!(一)

相信很多小伙伴已经听完了徐老师的Java课程,那么Java基础的知识点你真的掌握了吗?今天就跟随老九的步伐一起来复习复习Java基础的知识点吧! ? 1、在Ja...

35860
来自专栏菜鸟计划

javascript 函数详解

一、函数的一些基础概念: 1.js中的函数使用function来声明。 2.关于return: 2.1  函数在执行到return语句后悔立即停止并退出,ret...

34340
来自专栏WindCoder

在数组中查找次大值,并与最后一个元素交换—C语言

29610
来自专栏静默虚空的博客

Java正则速成秘籍(二)之心法篇

导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验、查找、替换与规则匹配的文本。 又爱又恨的正...

206100
来自专栏赵俊的Java专栏

Python 数据类型

18830
来自专栏鸿的学习笔记

Python和Scala的操作符

在聊完类和对象之后,我们要理解一件事,无论是在Scala还是Python,每一个值都是对象,在某种程度上来说,这两门语言都是更加纯粹的面向对象的语言。两者也都支...

7220
来自专栏机器学习算法与Python学习

Python: 对迭代器的小结

迭代器 迭代器是在python2.2中被加入的,它为类序列对象提供了一个类序列的接口。有了迭代器可以迭代一个不是序列的对象,因为他表现出了序列的行为。当在pyt...

35260
来自专栏数据结构与算法

05:输出亲朋字符串

05:输出亲朋字符串 总时间限制: 1000ms 内存限制: 65536kB描述 编写程序,求给定字符串s的亲朋字符串s1。  亲朋字符串s1定义如下:给定...

48860

扫码关注云+社区

领取腾讯云代金券