黑马程序员技术交流社区
标题:
谁能帮我解释一下这个类型转换
[打印本页]
作者:
朱皓
时间:
2012-3-6 16:09
标题:
谁能帮我解释一下这个类型转换
float a=87.4f;
string str=a+"";
作者:
kevindavid
时间:
2012-3-6 16:43
定义一个浮点数a=87.4,后面就是在控制台输出 将a+""赋值给str 但是我也有一点疑问【a+“”】 后面这两个符号代表什么如果说是连接的话为什么里面什么都没有,建议自己在编译一下看一下输出的是什么 。我还没下。,。,。,。,嘿嘿 :lol
作者:
蒙武辉
时间:
2012-3-6 18:41
float a=87.4f;定义哥浮点型变量
string str=a+""; 定义一个字符串变量,a+" "它会自动转变成字符串。
作者:
秦超
时间:
2012-3-6 19:24
这个是先定义了一个浮点型的变量a, 然后又定义了一个字符串变量 str
由于字符串的等级比浮点型的高(字符串的开辟的内存空间比浮点数的大),所以当虚拟机运算 a+""时,a 会自动提升为字符串.
扩展一下: byte-->short-->int-->long
float-->double
从左到又,等级依次升高,可以自动转换,但是从右到左需要强制转换,但是会损失精度
作者:
泮和顺
时间:
2012-3-7 10:59
本帖最后由 泮和顺 于 2012-3-7 11:17 编辑
想错了竟然 只是把他直接当做字符串
作者:
张红
时间:
2012-4-26 19:14
float a=87.4f;
string str=a+"";
这是自动类型转换的问题。a 是 float的,但如果它和String作用的话+就变成了连字符,所以最后输出的就是String的了。
作者:
荣天
时间:
2012-5-8 23:13
float a=87.4f; // 如果定义单精度87.4+f 不加f默认是double
string str=a+""; //单精度a +“ ” 就是把a转变为字符串形式
希望对哥们有帮助
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2