如果可能的话,我想在IDE中快速检查我正在分析的静态方法的结果。
public static int foo(int a, int b){
return (a & 11) ^ b;
}
例如,右键单击表达式并运行它,如
> foo(11, 2)
> 9
> foo(28, 3)
> 11
我事先并不知道结果(实际代码更复杂),所以单元测试是不可能的。
我该怎么做?
答案 0 :(得分:2)
在 Eclipse 中有所谓的 Java Scrapbook Pages :请参阅Eclipse Help - Creating a Java Scrapbook Page
自Java 9 以来,所谓的 JShell 也可以在没有IDE的情况下使用:请参阅Oracle Help Center - Introduction to JShell < / p>
Java 9 JShell 可以在IntelliJ IDEA中使用:工具| JSHell控制台...... 操作。
答案 1 :(得分:1)
如果使用IntelliJ和Java 9+,您可以访问jshell,即Java 9及更高版本附带的repl。这允许您将方法定义粘贴到jshell控制台中,然后使用不同的参数运行它。
有关详细信息,请参阅https://blog.jetbrains.com/idea/2017/09/java-9-and-intellij-idea/(实际的JShell部分已经过了一半,显然没有直接链接)
答案 2 :(得分:1)
在Java 9中,您可以使用其他答案中提到的jshell
。
如果没有,您仍然可以使用单元测试。从技术上讲,单元测试不需要断言。您可以在单元测试中使用任何代码,这意味着您也可以使用以下代码:
@Test
public void getMyResult(){
System.out.ptintln(foo(1,10));
}
显然,你不应该把这个测试提交到你的源代码仓库中,因为测试设计得很糟糕(除非foo
抛出异常,否则它总是会通过)但是为了你的目的,它可能会成功。< / p>
修改强>
正如@AxelH在评论中所说,你也可以创建一个简单的main
方法。