为了账号安全,请及时绑定邮箱和手机立即绑定

Java里的关于类型转换的一个小问题

Java里的关于类型转换的一个小问题

一只名叫tom的猫 2019-04-18 14:15:20
  public void mouseDra=gged(MouseEvent e)  {      String str = "X =   " + e.getX() + "  Y = " + e.getY();  this.textFiled.setText(str);    }            我的问题在第三行,e.getX()返回的是一个int类型的数,但是括号中是String类型,并且str也声明为字符串。那没请问:为什么编译时不报错呢?
查看完整描述

8 回答

?
慕虎7371278

TA贡献1802条经验 获得超4个赞

噢,程序自动做类型转换了。因为所有的对象都继承自Object,都有ToString()方法;


查看完整回答
反对 回复 2019-05-07
?
暮色呼如

TA贡献1853条经验 获得超9个赞

你在+的时候自动转换了,如果以后有什么类型转string也可以直接加一个空的


查看完整回答
反对 回复 2019-05-07
?
哈士奇WWW

TA贡献1799条经验 获得超6个赞

当整形赋值给字符串变量时,整形变量会事先转换成字符串变量(相当于把整形变量当成字符串),然后在赋值给字符串。也就是类型自动转换


查看完整回答
反对 回复 2019-05-07
?
阿晨1998

TA贡献2037条经验 获得超6个赞

在相同的运算级的情况下从左到右顺序执行运算,字符串碰到基本类型int时,+号就是连接符了,而不是运算符了


查看完整回答
反对 回复 2019-05-07
?
largeQ

TA贡献2039条经验 获得超7个赞

java的数据类型转换分为两种,显性和隐性的,这里就是隐性的。
基本数据类型的有隐性数据类型,或者强制数据类型转换,百度很多。
而在自己定义的类中,如果重写了ToString()的话,和某个String类型的输出都会强制根据ToString的内容强制输出。

查看完整回答
反对 回复 2019-05-07
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

我想知道为什么要报错。。。。


查看完整回答
反对 回复 2019-05-07
  • 8 回答
  • 0 关注
  • 676 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信