java隐式(自动)类型转换的那些事

java隐式(自动)类型转换的那些事,第1张

1、加法(具有特殊性)

因为+还可以拼接字符,故具有一定特殊性。

规则:

  • 当一侧为String类型,被识别为字符串拼接,并会优先将另一侧转换为字符串类型。
  • 当一侧为Number类型,另一侧为原始类型,则将原始类型转换为Number类型。
  • 当一侧为Number类型,另一侧为引用类型,将引用类型和Number类型转换成字符串后拼接
2.减乘除

我们在对各种非Number类型运用数学运算符(- * /)时,会先将非Number类型转换为Number类型。

3、逻辑语句

1、单个变量转化为布尔数据类型

2、使用==比较中的5条规则

  • 布尔数据类型和其他任何类型的比较,布尔数据类型首先被转换为Number类型。
  • StringNumber比较,先将String转换为Number类型。例如:‘123‘变为123,’’变为0
  • 原始类型引用类型做比较时,引用类型会依照ToPrimitive规则转换为原始类型。【ToPrimitive规则,是引用类型向原始类型转变的规则,它遵循先valueOf(valueOf() 方法用于返回给定参数的原生 Number 对象值toString(返回一个“以文本方式表示”此对象的字符串的模式期望得到一个原始类型。】如果还是没法得到一个原始类型,就会抛出 TypeError。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/904990.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-15
下一篇 2022-05-15

发表评论

登录后才能评论

评论列表(0条)

保存