Java的数据类型分为三大类,即布尔型、字符型和数值型,其中数值型又分为整型和浮点型。相对于数据类型,Java的变量类型为布尔型boolean;字符型char;整型byte、short、int、long;浮点型 float、 double。其中四种整型变量分别对应于不同的精度和范围。此外,编程时还经常用到两种类变量,即String和Date。

字符型中的char是16bit,即一个可以存储一个字符。其实从理论上有2byte(16bit)可以存储两个字符,但是真正的有只能以ASCII编码中的两个字符,也就是说只能是数字和英语字符等等,不能表示到其他国家的语言中某个字符,所以Java从普遍性来考虑的话,用Unicode来储存的话,只能储存一个字符(16bit)。

整型中byte、short、int、long数据类型,从小到大,分别是8bit,16bit,32bit,64bit,只能来表示数字而已,当然如果有英语字母也是可以的,输出的时候就输出了该字母在ASCII中编码大小的十进制,而不是输出英文字母本身,因为整型本身就是来储存数字的。

浮点型更容易了,是用来表示有小数点的数字的,不过他们的精度不同,float是32bit,而double是64bit。一般的话,float是够用了,不过数据的小数点后的位数过多可以用double,保证精度的准确。

简单数据类型之间的转换

1.自动类型的转换

低精度的数据类型可以自动转换为高精度的数据类型,低精度意味着bit位数小,放入bit位数大的高精度数据类型肯定是可以啦。就像是在1L水杯里面的水在从1L的水杯里倒到2L的水杯里是没事的,不会有精度溢出的

2.强制类型的转换

高精度的转换为低精度的,要强制,因为2L水杯里面的水从2L水杯倒到1L的水杯里面去,很可能精度溢出。当然,也不一定会溢出的,因为可能2L水杯里面装着0.9L的水,倒到1L的水杯里面去,当然没事了,不过最好不要这样子做,一般会导致溢出或者精度下降。

3.包装类过度类型的转换

Java的包装类就是可以直接将简单类型的变量表示为一个类。Java共有六个包装类,分别是Boolean,Character,Integer,Long,Float和Double,明显的对应着boolean,char,int,long,float和double。而String和Date本身就是类,不存在包装类的概念。

Java的数据转换的更多相关文章

  1. 关于JAVA的数据转换总结

    数据转换在编程里面是十分常用的,将平常可能用到的数据转换类型总结起来会在以后码代码的过程中有很大帮助. 在数据转换之前,需要明白的是基础数据类型的自动转换和强制转换.接下来就先从数据类型的容量讲起. ...

  2. JSON与JAVA的数据转换

    http://developer.51cto.com/art/200906/129090.htm java.lang.ClassNotFoundException: net.sf.json.JSONA ...

  3. Java byte数据转换和处理总结

    一.byte和int相互转换的方法 java程序或Android程序的socket数据传输,都是通过byte数组,但是int类型是4个byte组成的,如何把一个整形int转换成byte数组,同时如何把 ...

  4. 通过Gson解析Json数据

    Json是一种数据格式,便于数据传输.存储.交换:Gson是一种组件库,可以把java对象数据转换成json数据格式. gson.jar的下载地址:http://search.maven.org/#s ...

  5. json和gson的区别

    json是一种数据格式,便于数据传输.存储.交换gson是一种组件库,可以把java对象数据转换成json数据格式 GSON简单处理JSON json格式经常需要用到,google提供了一个处理jso ...

  6. Gson解析复杂Json数据

    背景                                                                   json是一种数据格式,便于数据传输.存储.交换. gson是 ...

  7. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  8. 利用JAVA反射机制将JSON数据转换成JAVA对象

    net.sf.json.JSONObject为我们提供了toBean方法用来转换为JAVA对象, 功能更为强大,  这里借鉴采用JDK的反射机制, 作为简单的辅助工具使用,   有些数据类型需要进行转 ...

  9. 将JSON数据转换成JAVA的实体类

    思路:首先将JSON格式的数据转换成JSONObject,然后将JSONObject转换成Java的实体类(其中类属性包括List等类型) Java实体类: SearchFilter 类 1 publ ...

随机推荐

  1. Yii源码阅读笔记(十一)

    controller类的render部分,用于渲染视图和布局文件: /** * Returns all ancestor modules of this controller. * 获取当前控制器所有 ...

  2. laravel 自定义函数 使用

    1.创建app/helpers.php 2.注册路径 { ... "autoload": { "files": [ "app/helpers.php& ...

  3. PureBasic 打开一个一行有多个数据的文件并读取其中某个数据

    如果有一个文件如下: TITLE = "Water Wurface Elevation"VARIABLES = "X", "Y", &quo ...

  4. Java Web项目调优原则

    1. 根据oracle生成的awr文件排除是否是数据库或者sql问题 2.配置中间件的dump文件路径,gc log文件路径 3.通过 MemoryAnalyzer 分析 dump文件 4.通过exc ...

  5. Bootstrap 一. 排版样式(内联文本元素,对齐,大小写,缩略语,地址文本,引用文本,列表排版 ,代码 )

    第 2 章 排版样式 在 h1 ~ h6 元素之间,还可以嵌入一个 small 元素作为副标题 <h1>Bootstrap 框架 <small>Bootstrap 小标题< ...

  6. yii1.1.3主从(多从)、读写分离配置

    从新配置main.php片段 代码如下 ----------------------------------------------------------- 'db'=>array( 'con ...

  7. XCode中的单元测试:编写测试类和方法(内容意译自苹果官方文档)

    当你在工程中通过测试导航栏添加了一个测试target之后, xcode会在测试导航栏中显示该target所属的测试类和方法. 这一章演示了怎么创建测试类,以及如何编写测试方法. 测试targets, ...

  8. QLineEdit 仿QQ签名框(思路很独特:用QSS::hover显示额外的图片)

    今天鼓捣了半天,终于实现了自定义Qt中的QlineEdit控件的大致效果. 这个问题对于新手而言,主要有以下几个难点: 1.继承QLineEdit控件 2.QSS设置QLineEdit的相关样式,可以 ...

  9. 【Android测试】【第一节】ADB——初识和用法

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处.  转载请注明出处:http://www.cnblogs.com/by-dream/p/4630046.html 写在前面的话 感觉自己进入Andr ...

  10. zepto源码--width,height--学习笔记

    width和height函数,实际上通过css方法也完全可以取到这两个函数的结果.获取width,$elem.css('width');设置width的话,$elem.css('width', 100 ...