Java变量初始化使用括号中的类型而不使用分号

时间:2016-10-03 11:22:01

标签: java

我看过这段代码:

Integer statusCode = (Integer)

奇怪,这是我第一次看到这种语法。 有谁能解释一下?

为什么行末没有分号?

如果将类型或类放在括号中,这意味着什么?

这样使用它有什么好处?

编辑:有些答案提到代码不完整或者编译错误,但我已经尝试过它可行了!实际代码来自此页面:https://www.tutorialspoint.com/servlets/servlets-exception-handling.htm

2 个答案:

答案 0 :(得分:2)

实际上,您提到的语法将导致编译时错误。 但是,您提到的是类型转换的示例,但它确实需要一个将使用类型转换转换的值。

例如: -

Integer val = (Integer) 2;

答案 1 :(得分:1)

此代码无效,会导致错误。

括号中的类型或类用于转换对象:

Object o = "str";
String str = (String)o;

示例来自:https://stackoverflow.com/a/5289493/4585226

强制转换的一个好处是你可以将它用作你所投射的类型/类。就像在这个答案中显示的例子一样。你现在可以将对象用作字符串。