有没有简单的方法来打印java变量而不是使用system.out.print? 我以前用C++或C编程。 在c中,我使用 printf(); C++在使用后的P> std:cout

有没有简单的方法来打印java变量而不是使用system.out.print? 我以前用C++或C编程。 在c中,我使用 printf(); C++在使用后的P> std:cout,java,printing,Java,Printing,我可以用 cout<< variable; coutNo.有几个选择: 就像你说的,在你的课堂上实现它 void println(String msg) { // String or Object or whatever System.out.println(msg); } 在方法中使用变量: PrintStream a = System.out; // ... a.println("Hi there"); 在中,表示可以导入static System.out

我可以用

cout<< variable;
coutNo.有几个选择:

  • 就像你说的,在你的课堂上实现它

    void println(String msg) { // String or Object or whatever
        System.out.println(msg);
    }
    
  • 在方法中使用变量:

    PrintStream a = System.out;
    
    // ...
    
    a.println("Hi there");
    
  • 在中,表示可以
    导入static System.outout.println


  • 在eclipse中。。。如果键入
    syso
    ,然后按
    ctrl+space
    ,它将建议
    System.out.println(…)

    否,您需要使用这样一个较短的方法名自行实现

    public static void println(String msg){
        System.out.println(msg);
    }
    

    或者,选择类似于
    log4j
    的方法,它可以在不同的日志级别为您做很多事情,以使用更简洁的方法名称来完成这项工作。

    大多数IDE都提供了
    System.out.println
    的代码模板,因此,如果只是关于键入,这就提供了一个解决方案

    但是,如果您主要使用
    System.out.println
    来添加调试输出,那么您可以使用以下帮助器方法列出的任何内置习惯用法:

    public static <T> T spy(String msg, T x) { System.out.println(msg+": "+x); return x; }
    

    我假设上面的
    spy
    是静态导入。

    在Netbeans中,键入sout并按tab键


    它将自动转换为System.out.println

    否,没有其他“更简单”的方法。。。顺便说一句,
    System.out.print
    对我来说似乎很容易,根据什么标准是
    printf
    容易,但是
    System.out.println
    不是吗?@MarkoTopolnik实际上我只是不想每次都键入System.out,我几乎从不亲自键入:所有的IDE都有一个模板。我在Eclipse中键入
    sysout
    。您也可以
    导入静态系统.out
    ,尽管我从未觉得有必要这么做。@MarkoTopolnik谢谢这是我想要的答案。因为我刚刚开始学习java。太多的类型让我很累。如果对象不是字符串或原语怎么办?@AnkurShanbhag:所以第二种或即将成为第三种方式可能更好。@Marko:谢谢你的修复。+1。实际上,这对于大多数IDE都是正确的,并且比实现自己的静态方法还要快@T.J.Crowder,是的,你是对的,我只是举个例子,因为OP来自C。我更新了我的答案,谢谢你!
    String result = dbCall(arg1, spy("Second arg", arg2), arg3);