`
海王子1994
  • 浏览: 43686 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

基本数据类型的强制转换

阅读更多
基本数据类型之间可以很方便的进行转换,主要有几种常见的方法,归纳如下:

(一)自动转换:
    因为高类型数据的取值范围大于低类型数据的取值范围,我们可以对低类型数据不做任何处理而直接赋值给高类型的数据,此时的转换类型为隐式的。不过要注意了哦,没有布尔类型的基本数据参与转换,因为呢,Java规定:布尔类型的基本数据时不允许与其他类型的基本数据直接进行转换的;另外还得提醒一点:虽然低类型数据可不做任何处理转换为高类型,但是可能会发生精度损失哦!!!

(二)手动强制类型转换:
    这是最常见的一种转换方式,我们经常在编程中会用到,如下:
    double d=1.234;
    int i=(int)d;
当我们仔细分析下时,其实可以发现,Java强制类型转换时把占用空间大的类型转换为占用空间小的类型所采取的方式是截断,而不是四舍五入,因而也会发生精度损失,甚至得到的值会完全不同,所以使用的时候要考虑清楚。

补充知识:低类型转换为高类型称为扩展转换,相反称为窄向转换。如果short型转换成byte型,会将高8位截断,只赋低8位的值。

(三)隐含强制转换:
实际上呢,在自动转换中就是Java实现了自动强制转换。

此外,我们常使用的字符串String不是基本数据类型,而是一个类:java.lang.String.
所以基本数据类型和String之间的转换是不能直接进行的,要用到基本数据类型的封装类。

*(一)将基本数据类型转换为字符串:

1)第一种方法是非静态转换方法:所有的封装类(包括非基本数据的封装类)都提供了一个toString()方法,该方法继承自Object类,并且在大多数类中实现 了重写。该方法无参数、非静态,其返回封装类对象中封装的值的字符串表示。因此,要想把基本数据类型的值转换为字符串,可以首先创建该值的封装类对象然后 调用所创建对象的toString方法。

例子:
    int i=50;
   System.ou.prinln(new Integer(i).toString);    //输出"50"

2)第二种为静态转换方法:所有的封装类还提供了有参数的、静态的toString。这种方法和上面的区别在于它是静态的。
  System.out.println(Integer.toString(50));          //输出"50"

*(二)、将字符串转换为基本数据类型:

   几乎每个封装类各自都提供了静态的parseXxx方法,用来将字符串转换为对应基本数据类型的值。

   1)parseXxx方法以字符串为参数,返回对应基本类型的值,若字符串参数格式不正确,将抛出NumberFormatException异常。

   2)当封装类对应的是四种整数类型的任何一种时,还能通过第二个参数指定字符串转换成的数值进制。

   3)这里所说的Xxx代表基本数据类型的名称,例如Xxx为int型那么方法的全写就是parseInt

例子:
  String s="12345";
  Integer.parseInt(s);                      //得到整数12345
分享到:
评论

相关推荐

    JavaScript 动态网页实例 - 数据类型转换.rar

    类型转换是网页编程不可或缺的内容,本文先介绍自动类型转换,接着是强制性的显式类型转换,最后如何将基本数据类型提升为对象。 JavaScript的数据类型分为基本数据类型和复合数据类型。复合数据类型主要有对象、...

    02 数据类型的转换.html

    数据类型:基本类型:数字number、字符串:string、布尔:boolean、null、undefined 引用类型:数组:array、对象:object、函数:function 转成数字对象:强类型、显示转换:强制转换成数字类型。Number() ...

    java基本数据类型

    java基本数据类型自动转换以及强制转换,类型提升问题

    JAVA数据类型和运算符

    JAVA数据类型 关键字 标识符 数据类型强制转换

    深入分析java中的类型转换

    类型转换分为强制手动类型转换和隐式自动类型转换 (1) 基本数据类型 (2) 引用数据类型 (3) 强制类型转换 (4) 包装数据类型

    VB中各种数据类型转换函数

    Cdec函数: 强制将一个表达式转换成Decimal 数据类型; CDbl函数: 强制将一个表达式转换成Double 数据类型; 以上这些函数是最基本的几个数据进制之间的转换函数,其中以前三个函数最常用,也最有用.从上面几个函数...

    第2章 数据类型、变量和常量

    为语言间互操作性提供基本框架的通用类型系统(CTS)的层次结构 值类型、引用类型及其差异 ...预定义基本数据类型的使用 类型转换方法:隐式转换、显式转换(强制转换)和Convert类提供的类型转换方法

    详解Javascript数据类型的转换规则

    5种基本数据类型:Null/Undefined/String/Boolean/Number 1种复杂数据类型:Object 二、数据类型检测 传送门《JS中检测数据类型的几种方式及优缺点小结》 1、typeof 2、instanceof/constructor 3、Object.prototype....

    JAVA8大数据类型.pdf

    低--------------------------------------------->⾼ byte,short,char-> int -> long -> float -> double 运算中,不同类型的数据先转化为同⼀类型,然后进⾏运算,转换规则如下: 基本数据类型的强制转换: 强制...

    C++四种强制类型转换

    四种强制类型转换:static_cast const_cast dynamic_cast reinterpret_cast ... ②用于基本数据类型之间的转换,如把int转换成char,把int转换成enum。这种转换的安全性也要开发人员来保证。 ③把空指针转换成目标

    Java笔记(9)类型转换与包装类

    文章目录Java笔记(9)类型转换与包装类对象类型转换(Casting)基本数据类型的Casting:对Java对象的强制类型转换称为造型==操作符与equals方法==:equals():String对象的创建代码练习题包装类(Wrapper)基本数据...

    1902易海滔01JavaScript数据类型.docx

    基本数据类型:String 字符串类型 Number数值类型 Boolean 布尔类型 Null 空值类型 Undefined 未定义类型 引用数据类型:Object 对象类型 JavaScript数据的强制类型转换 主要是将其他数据类型转换为String ...

    Python-内置数据类型.zip

    017.浮点数_自动转换_强制转换_增强赋值运算符 018.时间表示_unix时间点_毫秒和微秒_time模块 019.多点坐标_绘出折线图_计算两点距离 020.布尔值_比较运算符_逻辑运算符_短路问题 021.同一运算符_整数缓存问题 022....

    开发java程序知识点归纳

    基本数据类型 引用数据类型 自动转换, 强制转换, 数组基本用法, 求数组中的最大最小值, 数组元素排序, 在数组中插入元素, if结构 1、基本if结构: 2、if-else结构, 3、多重if结构, 4、嵌套if结构: ...

    Js从入门到精通,进阶教程

    JS基础——JS基本数据类型。 JS基础——JS强制类型转换。 JS基础——其他进制的数字。 JS基础——JS强制类型转换。 JS基础——JS算术运算符。 精通阶段: JS输出语言。 JS基本语法。 字面量和变量。 标识符。 数据...

    跟我学习javascript的隐式强制转换

    JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object。 object是引用类型,其它的五种是基本类型或者是原始类型。我们可以用typeof方法打印来某个是属于哪个类型的。不同类型的变量...

    汇编语言教程

     3 基本的数据类型  1.3 习题 第2章 CPU资源和存储器  2.1 寄存器组  1 寄存器组  2 通用寄存器的作用  3 专用寄存器的作用  2.2 存储器的管理模式  1 16位微机的内存管理模式  2 32位微机的内存管理...

    java开发面试题及答案

    答:①分为基本数据类型和引用数据类型。②基本数据类型包括:数值型(byte、short、int、long、float、double),字符型(char)以及布尔型(boolean)。除了基本类型外,其他数据类型都属于引用类型,包括类、接口...

    c++面向对象第二章的ppt

    第二章,基本数据类型;类型的作用 标识符命名风格 常量与变量 基本数据类型 运算符与表达式 隐式类型转换与强制类型转换 简单的输入/输出

Global site tag (gtag.js) - Google Analytics