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代表在内存中新开辟一块区域

时间: 2024-10-05 03:28:24

Java之数字处理类浅析的相关文章

Java的File类浅析

File类,输入输出流基本上是离不开File类的. File类里面常用的构造方法 File(String pathname) File(File parent, String child) File(String parent, String child) File(URI uri) 常用实例方法 canRead() canWrite() canExecute() delete() getAbsolutePath() getName() getParent() isFile() isDirect

浅析Java.lang.Process类

一.概述      Process类是一个抽象类(所有的方法均是抽象的),封装了一个进程(即一个执行程序).      Process 类提供了执行从进程输入.执行输出到进程.等待进程完成.检查进程的退出状态以及销毁(杀掉)进程的方法.      ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,该实例可用来控制进程并获取相关信息. 创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作,比如,本机窗口

浅析Java.lang.ProcessBuilder类

最近由于工作需要把用户配置的Hive命令在Linux环境下执行,专门做了一个用户管理界面特地研究了这个不经常用得ProcessBuilder类.所以把自己的学习的资料总结一下. 一.概述      ProcessBuilder类是J2SE 1.5在java.lang中新添加的一个新类,此类用于创建操作系统进程,它提供一种启动和管理进程(也就是应用程序)的方法.在J2SE 1.5之前,都是由Process类处来实现进程的控制管理.      每个 ProcessBuilder 实例管理一个进程属性

浅析Java.lang.Runtime类

一.概述      Runtime类封装了运行时的环境.每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接.      一般不能实例化一个Runtime对象,应用程序也不能创建自己的 Runtime 类实例,但可以通过 getRuntime 方法获取当前Runtime运行时对象的引用.      一旦得到了一个当前的Runtime对象的引用,就可以调用Runtime对象的方法去控制Java虚拟机的状态和行为.       当Applet和其他不被信任的代

java编程入门11 数字处理类

1.数字格式化 1.DecimalFormat类(用于格式化十进制数字) 1)DecimalFormat类是NumberFormat的子类,它可以将一些数字格式化为整数.浮点数.百分数等.通过使用该类可以为要输出的数字加上单位或控制数字的精度.一般情况下可以在实例化DecimalFormat对象时传递数字格式,也可以通过DecimalFormat类中的applyPattern()方法来实现数字的格式化 2)在格式化数字时,DecimalFormat类中使用一些特殊字符构成一个格式化模板,使数字按

Java 内存分配全面浅析

本文将由浅入深详细介绍Java内存分配的原理,以帮助新手更轻松的学习Java.这类文章网上有很多,但大多比较零碎.本文从认知过程角度出发,将带给读者一个系统的介绍. 进入正题前首先要知道的是Java程序运行在JVM(Java Virtual Machine,Java虚拟机)上,可以把JVM理解成Java程序和操作系统之间的桥梁,JVM实现了Java的平台无关性,由此可见JVM的重要性.所以在学习Java内存分配原理的时候一定要牢记这一切都是在JVM中进行的,JVM是内存分配原理的基础与前提. 简

Looper类浅析

Android中的Looper类,是用来封装消息循环和消息队列的一个类,用于在android线程中进行消息处理.handler其实可以看做是一个工具类,用来向消息队列中插入消息的. (1) Looper类用来为一个线程开启一个消息循环.        默认情况下android中新诞生的线程是没有开启消息循环的.(主线程除外,主线程系统会自动为其创建Looper对象,开启消息循环.)        Looper对象通过MessageQueue来存放消息和事件.一个线程只能有一个Looper,对应一

数字处理类 知识点

package lianxi; import java.util.*; public class shuzichulilei { public static void main(String[] args) { //数字处理类 //静态方法:不需要类实例化(new)就可以调用的方法 System.out.println(Math.PI);//圆周率的常量 //取整数 double d=123.45; //1.四舍五入 System.out.println("四舍五入="+Math.ro

java语言安全机制浅析

java通过所谓的沙箱安全模型保证了其安全性,下面我们就来看看java提供的安全沙箱机制. 组成沙箱的基本组件如下: 1.类装载器结构: 2.class文件检验器: 3.内置于java虚拟机(及语言)的安全特性: 4.安全管理器及java API. 一.类装载器体系结构 1.防止恶意代码去干涉善意的代码. 这是通过为不同类加载器提供不同的命名空间来实现的,在java虚拟机中,在同一个命名空间内的类可以直接进行交互,而不同的命名空间中类甚至不能觉察彼此的存在,除非显式地提供允许它们交互的机制. 2