java数据类型之间的转换_Java数据类型之间的转换(转)
这是我写的第一篇笔记,自己会不定时更新内容中有问题的地方,也希望大家多多指正.共同进步!
一 基本的数据类型
基本的数据类型有一下四种:
1> int 长度数据类型有: byte(8bits),short(16btis), int(32bits) ,long(64bits);
2>float 长度数据类型有:单精度(32bits float) ,双精度(64bits double) ,Java中将小数默认为double类型,若要定义为float需要在后面用f声明;
3>boolean 类型变量的取值有:ture, false;
4>char数据类型有:unicode字符,16位
基本数据类型:int,float,boolean,char,double,short,byte,long,
对应的封装类型:Integer,Float,Boolean,Character,Double,Short,Byte,Long
二 数据类型之间的转换情况
分为以下几情况:
1> 低级到高级的自动升级类型转换;
2> 高级到低级的强制类型转换(会导致溢出或者丢失精度);
3> 基本类型向类类型(封装类型)转换;
4> 基本类型向字符串的转换;
5> 类类型向字符串转换;
三 基本数据类型之间的转换规则
1.在一个双操作数以及位运算等算术运算式中,会根据操作数的类型将低级的数据类型自动转换位高级的数据类型,分为以下几种情况:
1>只要两个操作数中有一个是double类型的,另一个将会被转换成double类型,并且结果也是double类型;
2>只要两个操作数中有一个是float类型的,另一个将会被转换成float类型,并且结果也是float类型;
3>只要两个操作数中有一个是long类型的,另一个将会被转换成long类型,并且结果也是long类型;
4>两个操作数(包括byte,short,int,char)都会被转换成int类型,并且结果也是int类型;
2.如果低级类型为char型,向高级类型(整型)转换时,会转换为对应ASCII码值,再做其他类型的自动转换.
3.对于byte,short,char三种类型而言,他们是平级的,因此不能相互自动转换,可以使用下述的强制类型转换.
4.不能在布尔值和任何数字类型间强制类型转换.
5.不同级别数据类型间的强制转换,可能会导致溢出或精度的下降.
6.当字节类型变量参与运算,Java作自动数据运算类型的提升,将其转换为int类型.如:
int b7 =5;
byte b8= (byte) ((byte)b7*3);
四.包装数据类型与基本数据类型之间的转换
简单类型的变量转换为相应的包装类,可以利用包装类的构造函数.
Boolean(boolean value) , Character(char value),Integer(int value),Long(long value),Float(float value),Double(double value)
而在各个包装类中,总有形为xxValue()的方法,来得到其对应的简单类型数据.利用这种方法,也可以实现不同数值型变量间的转换,例如,对于一个双精度实例类,intValue()可以得到其对应的整型变量.
1.字符串与其他类型间的转换
1>其他类型向字符串的转换
调用类的串转换方法:X.toString();
自动转换:X+" " ;
使用String的方法:String.valueOf(X);
2>字符串作为值,向其他类型的转换
先转换成相应的封装器实例,再调用对应的方法转换成其他类型,如:double d = Double.valueOf(31.1);
静态parseXXX方法
String s = "1";
byte b = Byte.parseByte( s );
short t = Short.parseShort( s );
int i = Integer.parseInt( s );
long l = Long.parseLong( s );
Float f = Float.parseFloat( s );
Double d = Double.parseDouble( s );
Character的getNumericValue(char ch)---->把char类型的数据转换成int类型
五,转换实例
1.基本类型间的转换
正向转换:通过类包装器来new出一个新的类类型的变量
Integer a = new Integer(2);
反向转换:通过类包装器来转换
int b = a.intValue();
通过类包装器-->基本数据类型
ps1:int i = Integer.parseInt("123");
说明:此方法只能适用于字符串转化成整型变量
ps2: float f = Float.valueOf("123").floatValue();
说明:上例是讲一个字符串转化成一个Float对象,然后再调用这个对象的floatValue()方法返回其对应的float数值.
ps3: boolean b = Boolean.valueOf("123").booleanValue();
说明:上例是将一个字符串转化成一个boolean对象,然后再调用这个对象的booleanValue()方法返回其对应的blooean数值.
ps4:double d = Double.valueOf("123").doubleValue();
说明:将一个字符串转换成一个double对象,然后再调用这个对象的doubleValue()方法返回其对应的double数值
ps5: long l = Long.valueOf("123").longValue();
说明:将一个字符串转换成一个long对象,然后再调用这个对象的longValue()方法返回其对应的long数值.
ps6:char = Character.valueOf("123").cahrValue()
说明:将一个字符串转换成一个Character对象,然后再调用这个对象的charValue()方法返回其对应的char数值.
2 基本类型向字符串的转化
正向转换:
System.out.println("1"+2+3);-->123 转化成字符串操作
System.out.println(2+3);-->5 不存在转化
System.out.println(2+3+"1");-->51 前两个数值相加后,拼接后面的字符串
3 类类型向字符串转换
正向转换:因为每个类都是object类的子类,而所有的object类都有一个toString()函数,所以通过toString()函数来转换即可
反向转换:通过类包装器new出一个新的类类型的变量
int i = Integer.valueOf("123").intValue()
float f = Float.valueOf("123").floatValue()
boolean b = Boolean.valueOf("123").booleanValue()
double d = Double.valueOf("123").doubleValue();
long l = Long.valueOf("123").longValue()
char c = Character.valueOf("123").charValue()
说明:将一个字符串转化成一个Character对象,然后调用这个对象的charvalue()方法返回其对应的char数值
java数据类型之间的转换_Java数据类型之间的转换(转)相关推荐
- java类型之间的转换_java类型之间的转换
string和int之间的转换? 字符串转换成数据 Java代码 String MyNumber ="1234"; intMyInt = Integer.parseInt(MyNu ...
- JAVA可以赋值分数吗_Java数据类型知多少?
c c++趣味编程全彩印刷基本游戏 70.4元 包邮 (需用券) 去购买 > Java数据类型 1.八大基本数据类型类型储存需求取值范围byte(字节型)1字节-128~127 short(短整 ...
- java 全半角转换_Java字符串全半角转换
虽然生活中很少用到全角,但是有时还是会用到对字符串进行全半角的转换,尤其是全角转换为半角,在这里简单记录一下,以备以后使用参考: /** * 字符串全半角转换 */ package com.proje ...
- java mb单位转换_Java计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)
程序员都很懒,你懂的! java程序员在实际的开发中会遇到很多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下,一般要求 b,kb,mb,gb,tb,pb之间的大小转换,我们都 ...
- java url换成流_JAVA数据流之间的转换
InputStream.read(byte[] b) 从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b 中. OutputStream.write(byte[] b) 将 b.length 个 ...
- java数据类型及表示范围_Java数据类型及对应取值范围
在Java中,数据类型分为两大种:基本数据类型(值类型)和包装类型(引用数据类型).基本数据类型不是对象,不能调用toString().hashCode().getClass().equals()等方 ...
- java 类之间数据传递_java类之间数据传递问题
我有两个类,但数据怎么传不过来啊?--------------------------------------------员工类importjava.util.*;publicclassEmploye ...
- java时间格式转换_Java时间日期格式转换
突然忘记了时间格式怎么转换,特此做个记录 Java时间格式转换大全 import java.text.*; import java.util.Calendar; public class VeDate ...
- java万能编码转换_Java中的编码转换
慕桂英3389331 CharsetDecoder 应该是您要寻找的东西,不是吗?许多网络协议和文件使用面向字节的字符集(例如ISO-8859-1(ISO-Latin-1))存储其字符.但是,Java ...
- java集合转换_java各种集合的转换
内容: 1.List转Array 2.Array转List 3.String转int[],String[](对单个字符) ...
最新文章
- python中rename函数_python os.rename(…)不起作用!
- HDU 3058 Generator [AC自动机+期望DP]
- Django 应用开发(2)
- Sigmoid 函数(To be continued)
- Laravel大型项目系列教程(三)之发表文章
- MYSQL数据库应用优化
- XML与web开发-01- 在页面显示和 XML DOM 解析
- 计算机未来发展的5个前景,学习成绩普通,高考志愿填报不妨考虑这5个专业,未来发展很不错...
- ios category类别的使用
- OpenShift Security (1) - 红帽多集群安全管理 RHACS 的主要功能和技术架构
- 字符串匹配KMP算法设计C语言,KMP字符串匹配算法笔记
- Java网络编程从入门到精通(24):实现HTTP断点续传下载工具(附源代码)
- 机器人工程师学习计划
- 高通骁龙430系列-MSM8937 ( Cortex-A53架构)
- 儿科常见疾病的中成药疗法
- MPQ文件系统优化(续)
- 网页保存mhtml格式
- 苹果app一键签名工具开发者专用版 (iOS签名工具,苹果签名工具。ipa签名工具)
- LruCache的基本用法
- android电视怎么使用教程,手机无线投屏到电视机的方法和具体该操作
热门文章
- msxml6 x86.msi v6.10.1129.0
- Java到底能干什么?有哪些实际用途?
- 人脸识别活体检测技术理论
- linux离线安装caddy,GitHub - scriptsboy/aria2: LACY:Linux一键安装Aria2 + Caddy + YAAW实现离线下载、在线播放。...
- 阿里云无影云桌面使用教程(3分钟上手)
- c语言爬楼梯不用递归,[leetcode]爬楼梯的递归和非递归方法
- 爬虫基础 || 2.1 request介绍(功能比urllib丰富,附上简单的知乎爬虫)
- apkg格式怎么打开_pdf转图片怎么转?分享最简单的PDF转图片方法
- 接口测试常用文档模板介绍
- java的重载和重写实例_java中重写和重载的区别