欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java基本数据类型之间的相互转换详解

时间:2022-09-11 11:26:01|栏目:JAVA代码|点击:

今天主要学习的是Java基本数据类型之间的转换以及String类型与基本数据类型之间的转换

1.自动类型转换

1.定义

Java程序在进行赋值或运算时,自动将精度小的转换成精度大的。

2.数据类型按精度大小排序

char —> int —> long —> float —> double

byte —> short —> int —> long —> float —> double

3.使用细节

  • 当有多种数据混合运算时,系统首先自动将所有数据转换成容量最大的数据类型,再进行计算。
  • 当把精度大到数据类型赋给精度小的会报错。注意在进行数值赋值时,先判断是否在该小精度数据类型范围内,如果是就可以,如果是进行变量赋值,就不行。
  • byte,short和char之间不能相互自动转换。
  • byte,short和char三者可以计算,计算时转换成为int类型。
  • boolean类型不参与转换。
  • 自动提升原则:表达式结果的类型自动转换成操作数中最大的类型。

2.强制类型转换

1.定义

自动类型转换的逆过程,将容量大的数据类型装换成容量小的数据类型。使用时要加上强制转换符,但可能造成精度降低或溢出。

2.使用细节

强制类型转换只对最近的操作数有效,往往会使用小括号提升优先级。

char类型可以保存int的常量值,但不能保存int的变量值,需要强转。

public class ForceTest{
    public static void main(String []args){
      int x = (int)(10*3.5+6*1.5);//正确
      int y = (int)10*3.5+6*1.5;//报错
    }
}

3.基本数据类型与String类型的转换

1.基本数据类型转String类型

将本类型的值 + “” 即可。

int n1 = 100; String str1 = n1 + "";

2.String类型转基本数据类型

通过基本数据类型的包装类调用parseXX函数即可,但要确保String类型能够转换成有效的数据,比如可以将"123"转换,但不能将"hello"转换成一个整数,如果格式不对,就会抛出异常,终止程序。

String Str1 = "345";
Integer.parseInt("123");
Double.parseDouble("123.5");
Float.parseFloat("123.3");
Short.parseShort("123");
Boolean.parseBoolean("true");
Long.parseLong("123456");
Byte.parseByte("12");
//将字符串转换成字符型需要调用charAt(int a)函数
Str1.charAt(a);
//表示字符串中第a+1个字符 Str1.charAt(0)='3';

上一篇:SpringMVC配置404踩坑记录

栏    目:JAVA代码

下一篇:Java详细分析String类与StringBuffer和StringBuilder的使用方法

本文标题:Java基本数据类型之间的相互转换详解

本文地址:http://www.codeinn.net/misctech/213350.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有