From Gossip@Openhome

Java Gossip: 給C使用者的第一個Java 程式

學 過 C 的人總是對printf()難以忘懷,他們在學新的語言時總不免感概:「是的!是printf(),它們忘了把printf()放進去了....」。

在某些時候,printf()函式中字串上可以指定參數輸出的功能確實令人難以割捨,幸好,Java在 J2SE 5.0 這 個版本中, 總算給了 C 使用者類似 printf() 的功能了,如果您是學過 C 的使用者,下面這第一個Java程式或許會讓您高興一些:

  • HelloWorld.java
public class HelloWorld {
public static void main(String[] args) {
System.out.printf("%s! Welcome to Java!\n", "caterpillar");
}
}

這次使用的是out物件的printf()方法,%s 對應於第一 個字串"caterpillar",程式的輸出會是如下:
 caterpillar! Welcome to Java!

'\n'對C 程式設計人員並 不陌生,它是換行字元,您也可以使用在之 後使用println()進行換行(因為printf()執行後又傳回PrintStream物件的關係):
System.out.printf("%s! Welcome to Java!", "caterpillar").println();

要指定數字的話,可以使用 %d , 例如:
System.out.printf("%s! Welcome to %dst Java!%n", "caterpillar", 1);
 
字串"caterpillar"會對應至%s,而數字1會對應至%d,%n則是自動解釋為執行平台上的換行字元(Windows上是/r/n,Linux 上是/n),執行結果會顯示如下:

caterpillar! Welcome to 1st Java!

下面這個程式可以更像C一點,使用到了 import 靜態成員(Static import) 的語法
  • HelloWorld.java
import static java.lang.System.out;

public class HelloWorld {
public static void main(String[] args) {
out.printf("%s! Welcome to Java!%n", "caterpillar");
}
}