从零开始学java(四)数据类型和类型转换

昨天我们讲到java中的数据类型,今天我们继续
基本数据类型还有一个布尔(boolean)类型
布尔型是一种起到判断作用的数据类型。boolean类型的值非常简单,只有true和false,表示真与假
例如:
boolean值

java中没有提供表示字符串的基本数据类型,而是通过String类来表示字符串,由于字符串是多个字符组成,因此字符串要使用双引号括起来。例如:
字符串

注意,String中单引号,双引号反斜杠都有特殊的用途,如果一个字符串中包含了这些特殊字符,则应当使用转义字符的表示形式。我们看下面的例子,我们用String来表明一个路径用第一种方法是不行的编译器都给我们报红线了,代表我们这里错了,我们应该用第二种方式。
反斜杠

基本类型的自动转换

在java程序中,不同的基本类型的值经常要进行互相转换。java语言提供的7种数值类型之间可以互相转换,有两种类型转换方式:自动类型转换和强制类型转换。

  • 自动类型转换
    java所有的数值型变量都可以互相转换,如果系统支持把某种基本类型的值直接赋予给另一种基本类型的变量,则这种方式称为自动类型转换。当把一个表数范围小的数值或变量直接赋给另一个表数范围大的变量时,系统将可以进行自动类型转;否则就需要强制转换。
    表数范围小的可以向表数范围大的进行自动转换,就好比有两瓶水,把小瓶的水倒入大瓶中时不会有任何问题。
    下图是java支持自动类型转换的类型
    这里写图片描述

不仅如此,当把任何基本类型的值和字符串进行连接运算时,基本类型的值将自动类型转换成字符串类型,虽然字符串类型不是基本类型,而是引用类型。因此,如果希望吧基本类型的值转换成对应的字符串时,可以把基本类型的值和一个空字符串进行连接。
看下面的图:
基本数据类型转成字符串类型

  • 强制类型转换
    如果希望把自动转换那图右边的类型转换成左边的类型,那就必须进行强制转换,当进行强制转换时有可能会造成数据丢失。就好比把大瓶子的水倒入小瓶子,如果大瓶子的水不多还好,但是如果大瓶子的水很多,那就会溢出,从而损失。强制类型转换的语法格式是:(目标类型)value
    我们来看下图
    强制类型转换
    强制类型转换输出

从图中可以看出,当试图进行强制转换时,必须额外小心,因为非常容易引起信息丢失。

表达式类型的自动提升

当一个算术表达式中包含多个基本数据类型的值时,整个算术表达式的数据类型将发生自动提升。java定义了如下的自动提升规则。
  • 所有的byte类型、short类型和char类型将被提升到int类型
  • 整个算术表达式的数据类型自动提升到表达式中最高等级操作同样的类型。
    我们来看例子:
    错误例子

下面来看一个正确例子:
正确例子
正确例子输出

好,我们今天就讲到这里。下节我们讲解运算符。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值