无法找到system.out.println()

66

我创建了一个项目,它要求我选择JDK版本并完成。

在自动完成中,我找不到system名称空间。

我手动输入了它,但是IDEA告诉我system不存在。


19
只需键入sout并按TAB键即可。 - vikingsteve
1
@vlio20 真的提供了正确的方法,但请记得指定适用的上下文(例如 Java 和/或 Groovy)。如果不这样做,它将无法工作(个人经验!) - panza
5个回答

205

应该使用首字母大写的 System

一些非常有用的快捷键:

soutm (+TAB) ==> System.out.println("Class.And.Method.Name")
soutv (+TAB) ==> System.out.println("Last variable used = " + value);
sout (+TAB) ==> System.out.println();

我真的很喜欢IntelliJ。几年前从Eclipse转到它,我感到非常高兴;)


5
哦,所以Intellisense是区分大小写的吗?这与Eclipse相比是一个缺点。 - JatSing
1
但是你的对象是大小写敏感的,所以这有点说得通...我在接受尝试 IntelliJ 之前使用 Eclipse 已经有6年了(那是在2008年)。三天后,我就被说服了。无论如何,每个人都有自己的选择,Eclipse 也很棒 :) - Guillaume
4
我喜欢现在这个样子,因为它支持驼峰命名自动完成。比如你输入"PrM",它会在列表中找到并优先显示"ProjectManager"。 - Guillaume
1
无论如何,我找到了它:http://www.jetbrains.com/idea/webhelp/editor-code-completion.html。@Guillaume,你也可以使用不区分大小写的自动完成来进行camelCase自动完成,我刚刚测试过了。 - JatSing
5
另一个花式快捷键是soutp,它会打印出该方法中的所有参数。 - Lucky
显示剩余6条评论

36

只需键入sout

public class Main {

public static void main(String[] args) {
    int data = 1;
    System.out.println(); ===>sout 
    System.out.println("Main.main"); ===>soutm 
    System.out.println("args = [" + args + "]"); ===>soutp 
    System.out.println("data = " + data); ===>soutv 
}

}

sout - 只是打印 System.out.println()

soutm - 添加了类名和方法名

soutp - 添加了参数

soutv - 添加了最后一个变量名


14

我们可以更改自动完成设置,以忽略大小写。转到:

File -> Settings... -> IDE Settings -> Editor -> Code Completion 

'大小写敏感的自动完成'更改为'无'


2
对于2016版本,设置在文件 > 设置 > 编辑器 > 通用 > 代码完成 > 区分大小写完成 > 无 - Lucky

12

我之前使用eclipse时,使用了syso快捷方式,因此我将其添加到了我的模板中。以下是模板代码:

System.out.println($END$);

这里有一张截图: 图片描述

别忘了在窗口底部添加Java作为适用上下文。
现在当您键入syso时,它将作为提示出现。以下是屏幕截图:
图片描述

希望这能帮到您。


3
这可能是因为用户没有创建任何主函数或者试图在类中直接测试而没有使用任何函数。

这应该是一条评论,而不是一个答案。 - Mohammad Akbari

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接