JShell如何查找变量或结果的类型

Sun*_*jan 5 java jshell

如何在JShell中查找变量或表达式结果的类型.

正在用Java试验Bitwise Operators

jshell> byte b=5<<-1;
|  Error:
|  incompatible types: possible lossy conversion from int to byte
|  byte b=5<<-1;
|         ^---^

jshell> 5<<-1
$2 ==> -2147483648

jshell>
Run Code Online (Sandbox Code Playgroud)

是否有类似Python类型(5 << - 1)的替代方法在Jshell中查找表达式或变量的结果类型.

Sun*_*jan 6

刚想通过设置反馈模式可以解决这个问题.

/set feedback verbose
Run Code Online (Sandbox Code Playgroud)

参考https://docs.oracle.com/javase/9​​/jshell/feedback-modes.htm

现在可以很容易地在响应中找到表达式或变量的类型.

jshell> 5<<-1
$15 ==> -2147483648
|  created scratch variable $15 : int
Run Code Online (Sandbox Code Playgroud)

可以使用该命令重置该模式

/set feedback normal
Run Code Online (Sandbox Code Playgroud)

只需调用即可查询当前模式

/set feedback
Run Code Online (Sandbox Code Playgroud)