Java中数据类型转换大全(个人总结)
一、字符串转换为其他类型
1、将字符串转化为int型
(1)方法一
int i = Integer.parseInt(String str);
(2)方法二
int i = Integer.valueOf(String str).intValue();
注:Integer.parseInt和 Integer.valueOf 不同,前者生成的是整型,而后者是一个对象,所以要通过intValue()来获得对象的值;
字串转成 Double, Float, Long 的方法大同小异.
2、将字符串转化为Double型
(1)方法一
Double i=Double.parseDouble(String str);
(2)方法二
Double i=Double.valueOf(String str).doubleValue();
3、将字符串转化为Float型
(1)方法一
Float i=Float.parseFloat(String str);
(2)方法二
Float i=Float.valueOf(String str).floatValue();
4、将字符串转化为Long 型
(1)方法一
Long i=Long .parseLong(String str);
(2)方法二
Long i=Long.valueOf(String str).longValue();
二、其他类型转换为字符串
1、将int类型转换为字符串
(1)方法一
String str = String.valueOf(int i);
(2)方法二
String str = Integer.toString(int i);
(3)方法三
String str = “” + i ;
注: Double, Float, Long 的方法大同小异.
2、将Double类型转换为字符串
(1)方法一
String str = String.valueOf(int i);
(2)方法二
String str = Double.toString(int i);
(3)方法三
String str = “” + i ;
3、将Float类型转换为字符串
(1)方法一
String str = String.valueOf(int i);
(2)方法二
String str = Float.toString(int i);
(3)方法三
String str = “” + i ;
4、将Long 类型转换为字符串
(1)方法一
String str = String.valueOf(int i);
(2)方法二
String str = Long .toString(int i);
(3)方法三
String str = “” + i ;
三、Long、String、Date类型之间的转化
1、java.util.Date类型转换成long类型
Date date=new Date();
System.out.println(date.getTime());
解析:其中getTime()返回为long类型,长度为13,表示毫秒;如果想获得秒数,只需要除以1000即可。
long mseconds=date.getTime()/1000;
2、long类型转换成java.util.Date类型
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date date = new Date(mseconds * 1000);
String str = sdf.format(date);
System.out.println(str);
前面的mseconds是表示的是秒数,所以要先乘1000得到毫秒数,再转为java.util.Date类型,这样就完成了long到Date的转化;
为了格式化输出Date,可以调用SimpleDateFormat的format方法格式化输出Date
3、形如“2015-08-31 21:08:06”等格式化string类型转换成java.util.Date类型
String str="2015-08-31 21:08:06";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = (Date) sdf.parse(str);
System.out.println(date.getTime());
其输出结果为
1441026486000
有时候需要对CST时间进行转化,如:Wed Sep 16 11:26:23 CST 2009,此时同样可以用SimpleDateFormat的parse解决
String str="Wed Sep 16 11:26:23 CST 2009";
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
Date date = (Date) sdf.parse(str);
四、float类型、double类型、int类型的转换
1、float类型转换为double类型
(1)方法一
/**
* 借助Float型的doubleValue()方法
*/
float f1=100.00f;
Float F1=new Float(f1);//F1.doubleValue()为Float类的返回double值型的方法
double d1=F1.doubleValue();
(2)方法二
/**
* 先将float型转换为String类型,再转换成BigDecimal,借助其doubleValue()方法
*/
float f = 127.1f;
BigDecimal b = new BigDecimal(String.valueOf(f));
double d = b.doubleValue();
2、double类型转换为float类型
double d = 3.14;
float f = (float)d;
3、double类型转换为int类型
double d1=100.00;
Double D1=new Double(d1);
int i1=D1.intValue();
4、int类型转换为double类型
int i1=200;
double d1=i1;
五、其他应用小实例
1、Long类型转换为int类型
(1)方法一:强制转换
long L = 300000;
int i=(int)L;
(2)方法二:调用intValue()方法
long L = 300000;
int i= new Long(L).intValue();
(3)方法三:先把long转换成字符串String,然后在转行成Integer
long L = 300000;
int i = Integer.parseInt(String.valueOf(L));
2、Long类型转换为integer类型
Integer i=new Long(Long l).intValue();
六、总结
1、字符串与其他类型间的转换
(1)其他类型向字符串的切换
a、调用类的串转换方法:X.toString();
b.自动转换:X+“”;
c.使用String的方法:String.valueOf(X);
(2)字符串作为值,向其它类型的转换
a.先转换成相应的封装器实例,再调用对应的方法转换成其它类型
例如,字符中“32.1”转换double型的值的格式为:
new Float(“32.1”).doubleValue()。
b.静态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 );
c.Character的getNumericValue(char ch)方法
返回指定的 Unicode 字符表示的 int 值。
(3)其它实用数据类型转换
2、数据类型
基本类型有以下四种:
(1)int长度数据类型有:byte(8bits)、short(16bits)、int(32bits)、long(64bits)、
(2)float长度数据类型有:单精度(32bits float)、双精度(64bits double)
(3)boolean类型变量的取值有:ture、false
(3)char数据类型有:unicode字符,16位
(4)对应的类类型:Integer、Float、Boolean、Character、Double、Short、Byte、Long
3、转换原则
(1)从低精度向高精度转换
byte 、short、int、long、float、double、char
注:两个char型运算时,自动转换为int型;当char与别的类型运算时,也会先自动转换为int型的,再做其它类型的自动转换
(2)基本类型向类类型转换
a.正向转换:通过类包装器来new出一个新的类类型的变量
Integer a= new Integer(2);
b.反向转换:通过类包装器来转换
int b=a.intValue();
(3)类类型向字符串转换
a.正向转换:因为每个类都是object类的子类,而所有的object类都有一个toString()函数,所以通过toString()函数来转换即可
b.反向转换:通过类包装器new出一个新的类类型的变量
eg1: int i=Integer.valueOf(“123”).intValue()
说明:上例是将一个字符串转化成一个Integer对象,然后再调用这个对象的intValue()方法返回其对应的int数值。
eg2: float f=Float.valueOf(“123”).floatValue()
说明:上例是将一个字符串转化成一个Float对象,然后再调用这个对象的floatValue()方法返回其对应的float数值。
eg3: boolean b=Boolean.valueOf(“123”).booleanValue()
说明:上例是将一个字符串转化成一个Boolean对象,然后再调用这个对象的booleanValue()方法返回其对应的boolean数值。
eg4:double d=Double.valueOf(“123”).doubleValue()
说明:上例是将一个字符串转化成一个Double对象,然后再调用这个对象的doubleValue()方法返回其对应的double数值。
eg5: long l=Long.valueOf(“123”).longValue()
说明:上例是将一个字符串转化成一个Long对象,然后再调用这个对象的longValue()方法返回其对应的long数值。
eg6: char=Character.valueOf(“123”).charValue()
说明:上例是将一个字符串转化成一个Character对象,然后再调用这个对象的charValue()方法返回其对应的char数值。
(4)基本类型向字符串的转换
a.正向转换:
如:int a=12;
String b;b=a+””;
b.反向转换:
通过类包装器
eg1:int i=Integer.parseInt(“123”)
说明:此方法只能适用于字符串转化成整型变量
eg2: float f=Float.valueOf(“123”).floatValue()
说明:上例是将一个字符串转化成一个Float对象,然后再调用这个对象的floatValue()方法返回其对应的float数值。
eg3: boolean b=Boolean.valueOf(“123”).booleanValue()
说明:上例是将一个字符串转化成一个Boolean对象,然后再调用这个对象的booleanValue()方法返回其对应的boolean数值。
eg4:double d=Double.valueOf(“123”).doubleValue()
说明:上例是将一个字符串转化成一个Double对象,然后再调用这个对象的doubleValue()方法返回其对应的double数值。
eg5: long l=Long.valueOf(“123”).longValue()
说明:上例是将一个字符串转化成一个Long对象,然后再调用这个对象的longValue()方法返回其对应的long数值。
eg6: char=Character.valueOf(“123”).charValue()
说明:上例是将一个字符串转化成一个Character对象,然后再调用这个对象的charValue()方法返回其对应的char数值。
Java中数据类型转换大全(个人总结)的更多相关文章
- Java中数据类型转换&基本类型变量和对象型变量
1.Java的数据类型分为三大类 布尔型,字符型和数值型 其中数值型又分为整型和浮点型 2.Java的变量类型 布尔型 boolean 字符型 char 整型 byte,short,int,lo ...
- Java中数据类型转换问题
boolean类型不可以转换为替他的数据类型. Java中byte(8位).short(16位).char三种类型的优先级是相同的,相同优先级之间是不能进行自动转换的(如果相互转换的话,必须强制类型转 ...
- Java基础知识强化22:Java中数据类型转换
数据类型转换: (1). 自动转换 低级变量可以直接转换为高级变量,这叫自动类型转换.比如: byte b: int b: long b: float b: double b: 上面的语句可 ...
- Java基础知识强化23:Java中数据类型转换(面试题)
1. 以下代码输出结果是( D ). public class Test { ...
- java中数据类型转换
1.自动类型转换:首先两者数据类型要兼容,且目标类型要大于源类型如(int类型转换成double类型) 2.强制转换:两者数据类型要兼容,会使破坏数据的结构
- java中数据类型转换注意事项
1.byte.short.char这三种类型互相做数学运算时都会先提升为int类型后再做运算 char a = 'A'; short b = 1; int num = a + b;//a和b在做运算前 ...
- java中的类型转换
java中的类型转换分为两种 自动类型转换 要实现数据的自动类型转换必须同时满足下面两个条件 两种数据类型彼此兼容 目标类型的取值范围大于原类型范围 强制类型转换 当两种数据类型彼此不兼容,或者说目标 ...
- HQL语句中数据类型转换,及hibernate中createQuery执行hql报错
一.HQL语句中数据类型转换: 我们需要从数据库中取出序号最大的记录,想到的方法就是使用order by子句进行排序(desc倒序),然后取出第一个对象,可是当初设计数据库时(我们是在原来的数据库的基 ...
- java常用数据类型转换
在Java开发过程中经常会涉及到数据类型的转换问题,比如数字型转字符型,字符型转日期型,字符串转数组等等,以及其他类型的强制转换等.经常出现,所以有必要总结一下. 1.如何将字串 String 转换成 ...
随机推荐
- jQuery插件初级练习1
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- Mysql 分区(range,list,hash)转载
MySQL支持RANGE,LIST,HASH和KEY四种分区.其中,每个分区又都有一种特殊的类型.对于RANGE分区,有RANGE COLUMNS分区.对于LIST分区,有LIST COLUMNS分区 ...
- 【WEB前端】CSS书写规范
古语有云:不以规矩,不成方圆.不管是国还是家还是...都得有规矩加以约束.同样,在我们程序猿的代码中也有一定的规矩——W3C标准,但是我今天不会讲那么高深的道理,我只想说说,我近些日子在开发中所总结出 ...
- .NET MVC 学习笔记(七)— 控制input控件
.NET MVC 学习笔记(七)— 控制input控件 画面中有时候需要输入数字,这时就需要控制input的输入.以下为保留两位有效数字. /* * 初始化数字输入 */ function initD ...
- InfluxDB 安装以及使用
InfluxDB InfluxDB简介: InfluxDB 是一个开源分布式时序.事件和指标数据库.使用Go语言编写,无需外部依赖.其设计目标是实现分布式和水平伸缩扩展. 它有三大特性: ...
- .net图表之ECharts随笔04-散点图
见图说话,修改参数option实现上图显示: 1. 共用参数title还有一个属性subtext,可以用来设置副标题 2. tooltip与toolbox也是共用属性 3. dataZoom是设置滚动 ...
- 神经网络的BP算法
正向传播: W下脚标定义根据用户自己的习惯 反向传播算法 1.误差由本层传到上层相关联的结点,权重分配 2.上层某个结点的总误差 2.误差最小化与权重变量有关,最小梯度法. 权重因子更新 偏导数求解, ...
- C语言Socket-单工通信(客户端向服务器发送数据)
服务端(server) #include <stdio.h> #include <winsock2.h> #pragma comment(lib,"ws2_32.li ...
- 冰与火之歌居然是在 DOS 系统上写出来的
简评:<权力的游戏>第八季(最终季)终于开播了!这部美剧的原著小说有一个很有趣的冷知识 -- 它是在运行 DOS 系统的计算机上写出来的.其实不少老粉都已经知道这个典故,不过听到老爷子的亲 ...
- 关于使用 IDEA Spring Boot 热部署
1,POM 中引用 <dependency> <groupId>org.springframework.boot</groupId> <artifactId& ...