Java的数据转换
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的数据转换的更多相关文章
- 关于JAVA的数据转换总结
数据转换在编程里面是十分常用的,将平常可能用到的数据转换类型总结起来会在以后码代码的过程中有很大帮助. 在数据转换之前,需要明白的是基础数据类型的自动转换和强制转换.接下来就先从数据类型的容量讲起. ...
- JSON与JAVA的数据转换
http://developer.51cto.com/art/200906/129090.htm java.lang.ClassNotFoundException: net.sf.json.JSONA ...
- Java byte数据转换和处理总结
一.byte和int相互转换的方法 java程序或Android程序的socket数据传输,都是通过byte数组,但是int类型是4个byte组成的,如何把一个整形int转换成byte数组,同时如何把 ...
- 通过Gson解析Json数据
Json是一种数据格式,便于数据传输.存储.交换:Gson是一种组件库,可以把java对象数据转换成json数据格式. gson.jar的下载地址:http://search.maven.org/#s ...
- json和gson的区别
json是一种数据格式,便于数据传输.存储.交换gson是一种组件库,可以把java对象数据转换成json数据格式 GSON简单处理JSON json格式经常需要用到,google提供了一个处理jso ...
- Gson解析复杂Json数据
背景 json是一种数据格式,便于数据传输.存储.交换. gson是 ...
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 利用JAVA反射机制将JSON数据转换成JAVA对象
net.sf.json.JSONObject为我们提供了toBean方法用来转换为JAVA对象, 功能更为强大, 这里借鉴采用JDK的反射机制, 作为简单的辅助工具使用, 有些数据类型需要进行转 ...
- 将JSON数据转换成JAVA的实体类
思路:首先将JSON格式的数据转换成JSONObject,然后将JSONObject转换成Java的实体类(其中类属性包括List等类型) Java实体类: SearchFilter 类 1 publ ...
随机推荐
- MVC问题
将 <customErrors mode="Off" defaultRedirect="~/404.html"> mode 设置为off 就可 ...
- 【转载】在LoadRunner中执行命令行程序之:popen()取代system()
我想大家应该都知道在LoadRunner可以使用函数system()来调用系统指令,结果同在批处理里执行一样. 但是system()有个缺陷:无法获取命令的返回结果. 也许你可以用`echo comm ...
- 二 mybatis 动态sql
动态sql应用 一 .什么是动态sql 1.where条件 动态查询 根据姓名或年龄或地址查询 UserMapper.xml 1 <select id="findUser" ...
- JBPM3.2 TABLE
http://m.blog.csdn.net/blog/longjie_happy/9343349
- nrf51822裸机教程-UART
art硬件模块通常都有内置的硬件接收buff,比如51822的硬件uart模块图如下 因为通常接收到uart数据时都会做一些处理.比如保存到数据,或者对数据做一些判断之类的. 如果uart的波特率设置 ...
- git warning解决方案
1.warning: LF will be replaced by CRLF in xxxxx. 设置: git config core.autocrlf false
- Java字符串的那些事儿。。。。
计划围绕以下几个方面 1.内存 2.正则表达式 3.String.format 4.编码 1.内存 先来看个经典的例子 public class Blog { public static void m ...
- [LeetCode] Pow(x, n) (二分法)
Implement pow(x, n). 刚开始没想到,后来看remlost的博客才写出来,代码很简练: class Solution { public: double pow(double x, i ...
- jQuery控制DOM对象
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- EGO Refresh小总结
这几天项目做完,有点闲,正好可以用来做做总结. 忘了是哪位博客大牛说:不能因为知识点小.少而不做总结. 那么现在就开始实践一把吧~ 总的来说,EGO有几点需要设置,设置完之后,就能够自如地用了. 1. ...