java java官網 - 如何縮短System.out.println()




java更新 7下載 (11)

記錄庫

您可以使用日誌庫而不是重新發明輪子。 例如Log4j將為info()warn()error()等不同的消息提供方法。

自製方法

或者簡單地製作一個你自己的println方法,然後調用它:

void println(Object line) {
    System.out.println(line);
}

println("Hello World");

IDE鍵盤快捷鍵

IntelliJ IDEA和NetBeans:

你輸入sout然後按TAB鍵,然後為你輸入System.out.println() ,光標放在正確的位置。

蝕:

鍵入syso然後按CTRL + 空格鍵

其他

找到您最喜愛的文本編輯器/ IDE的“snippets”插件

靜態導入

import static java.lang.System.out;

out.println("Hello World");

探索JVM語言

斯卡拉

println("Hello, World!")

Groovy的

println "Hello, World!" 

Jython的

print "Hello, World!" 

JRuby的

puts "Hello, World!" 

Clojure的

(println "Hello, World!")

犀牛

print('Hello, World!'); 

請建議我在哪裡可以找到lib,以便使用System.out.println()的較短表達式,並在何處放置該lib。


使用System.out.println()是不好的做法(更好地使用日誌框架) - >你的代碼庫中不應該有很多事件。 使用另一種方​​法簡單地縮短它似乎不是一個好的選擇。


我的BlueJ解決方案是編輯Program Files(x86)\ BlueJ \ lib \ english \ templates \ newclass中的新類模板“stdclass.tmpl”並添加此方法:

public static <T> void p(T s)
{
    System.out.println(s);
}

或者這個其他版本:

public static void p(Object s)
{
    System.out.println(s);
}

至於Eclipse,我使用建議的快捷方式syso + <Ctrl> + <Space> :)


package some.useful.methods;

public class B {

    public static void p(Object s){
        System.out.println(s);
    }
}
package first.java.lesson;

import static some.useful.methods.B.*;

public class A {

    public static void main(String[] args) {

        p("Hello!");

    }
}

使用log4j或JDK日誌記錄,以便您可以在該類中創建一個靜態記錄器,並像這樣調用它:

LOG.info("foo")

除了迄今為止的良好答案之外,以下是一些有趣的選擇:

選項1

PrintStream p = System.out;
p.println("hello");

方案2

PrintWriter p = new PrintWriter(System.out, true);
p.println("Hello");

Java是一種冗長的語言。

如果你只有3天,並且這已經困擾你,也許你會更好地學習像Scala這樣的不同語言:

scala> println("Hello World")
Hello World

從鬆散的角度來看,這可以用“庫”來使短表達式成為可能;)


在Java 8中:

    List<String> players = new ArrayList<>();
     players.forEach(System.out::println);

對於Intellij IDEA,輸入sout並按Tab

對於Eclipse類型的syso並按下Ctrl + 空格鍵


也許是一個小點,但是:

import static System.out;

public class Tester
{
    public static void main(String[] args)
    {
        out.println("Hello!"); 
    }
}

...產生了編譯時錯誤。 我通過編輯第一行來更正錯誤:

import static java.lang.System.out;

這是jpdymond提供的基本解決方案:

   public static double round(double value, int precision) {
      int scale = (int) Math.pow(10, precision);
      return (double) Math.round(value * scale) / scale;
  }

https://.com/a/22186845/212950





java