2014-10-05 51 views
0

我想知道我怎麼可以只使用:如何使用print(「HelloWorld」)而不是System.out.println(「Hello World」);

Print("statement") 

,而不是像一個完整路徑:

System.out.println("Statement"); 

我不得不進口什麼LIB做到這一點?

+5

一個簡單的解決辦法是寫自己的方法'Print'有'系統做出。 out.println()'裏面。 – Maroun 2014-10-05 14:09:50

+0

編寫一個'print'的方法。讓它調用'System.out.println'。完成。你可以用'import static'神奇地修復這個問題,但不建議這樣做。 – 2014-10-05 14:10:00

+0

我讀了關於導入靜態,它可以幫助我寫直接打印..但爲什麼不建議使用導入靜態..作爲第一次學習者我很難找到爲什麼不使用導入靜態? – vinay 2014-10-05 14:14:20

回答

1

只能

out.println(...); 

使用這樣

import static java.lang.System.*; 
+3

我會* *強烈推薦使用'import static'和'*'。這導致了巨大的命名空間污染。如果OP是初學者,那麼這隻會導致大量混淆...... – 2014-10-05 14:10:59

+1

@BoristheSpider - 我同意。但是,它可能是'import static java.lang.System.out;'。 – 2014-10-05 14:14:19

+0

@TedHopp不起作用。 System.out是PrintStream類型的對象;其方法不是靜態的。 – 2014-10-05 15:08:12

0

東西可以工作

static void print(String statement) 
{ 
    System.out.println(statement); 
} 
+0

爲了使它更通用,使用Object作爲參數併爲原始類型添​​加重載版本。噢,根據Java的[命名約定](http://www.oracle.com/technetwork/java/codeconventions-135099.html)使用名稱:「方法應該是動詞,與第一個字母小寫混合使用**,每個內部單詞的第一個字母大寫。「 – Pshemo 2014-10-05 14:14:49

+0

@Pshemo如果使用Object作爲參數,則不需要用於基元類型的重載版本。 – Boann 2014-10-05 14:28:44

+0

@Boann你是對的,最初我正在考慮減少自動裝箱,但在閱讀PrintStream代碼後,似乎選擇是在自動裝箱還是'Sting.valueOf()'之間,所以沒有太大的區別。 – Pshemo 2014-10-05 14:39:12