首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我指定"double x= 2.3“,java中的"int x= (int) x”和"x = (int) x“有什么区别?

如果我指定"double x= 2.3“,java中的"int x= (int) x”和"x = (int) x“有什么区别?
EN

Stack Overflow用户
提问于 2022-07-12 08:19:55
回答 1查看 55关注 0票数 -1

如果我指定"double x= 2.3",那么"int x= (int) x“和"x = (int) x”之间有什么区别?我对java很陌生,以前在python中使用python,如果我执行"x = 2.3;x= int(x);print(x)",x是2。

java:

python:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-12 08:24:39

您正在重新声明x,所以在行中

代码语言:javascript
复制
int x = (int)x

右边的x与您先前声明的x不同。所以它的值默认为0,所以(int)x是0。通常您不可能有两个x变量。这是jshell允许您做的事情,但是在正常的Java中,您不能这样做。

见此:

代码语言:javascript
复制
jshell> double x = 2.3
x ==> 2.3

jshell> int y = (int)x
y ==> 2
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72949114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档