在JShell工具中执行操作时,它会返回 一条消息(命令的成功,错误,创建的变量的类型及其值)。它已使用命令 “ / set feedback”定制。此命令显示当前配置的返回类型以及可用的不同返回模式。
jshell> /set feedback | /set feedback normal | | Available feedback modes: | concise | normal | silent | verbose
JShell中提供了四种反馈模式,如下所示:
1) / set反馈正常: 这是默认的 JShell反馈。当我们计算一个表达式时,JShell返回相应的结果 和一个内部变量,其中存储了该值。在创建变量 的情况下,JShell返回变量的名称和相应的值。创建数据类型(方法或类)时,JShell发送一个返回值,指定我们创建的类型。
jshell> /set feedback normal | Feedback mode: normal jshell> 5 + 5 $1 ==> 10 jshell> int i = 20 i ==> 20 jshell> int sum(int a, int b) { ...> return a + b; ...> } | created method sum(int,int)
2)/ set反馈详细:这是信息最丰富的 反馈模式。在评估一条指令时,它会显示相应的结果以及为其分配了一个内部变量以及表达式的类型。创建变量将是相同的。关于数据类型的创建,返回结果与普通 模式相同。
jshell> /set feedback verbose | Feedback mode: verbose jshell> 2 + 2 $1 ==> 4 | created scratch variable $1 : int jshell> String str = "Tutorix" str ==> "Tutorix" | created variable str : String jshell> int div(int a, int b) { ...> return a/b; ...> } | created method div(int,int)
3) / set反馈简洁:此模式显示最少 的信息量。在评估表达式时,它会告诉我们创建的内部变量的名称以及表达式的结果。另一方面,关于数据类型(变量,方法或类)的创建,JShell不会返回任何结果(除非代码有错误)。
jshell> /set feedback concise jshell> 2 + 2 $1 ==> 4 jshell> int i = 10; jshell> float y = "xyz"; | Error: | incompatible types: java.lang.String cannot be converted to float | float y = "xyz"; | ^---^
4) / set静默反馈:此模式不显示任何信息。当我们输入要求值的表达式时,JShell将结果存储在内部变量中,但不会在屏幕上指示相应的结果。创建数据类型(变量,方法或类)也是如此。内部所有操作都没有在屏幕上显示任何结果(除非顺序错误)。
jshell> /set feedback silent -> 3+3 -> int x = 7 -> int sum(int x, int y) { >> return x + y; >> } -> double y = "abc"; | Error: | incompatible types: java.lang.String cannot be converted to double | double y = "abc"; | ^---^ ->