1. 程式人生 > >廖雪峰Java1-3流程控制-1輸入輸出

廖雪峰Java1-3流程控制-1輸入輸出

1.輸入

  • 匯入java.util.Scanner
  • 建立Scanner物件並傳入System.in
  • 使用Scanner.nextLine()讀取使用者輸入的字串
  • Scanner.nextInt()讀取使用者輸入的整數
import java.util.Scanner;
public class Hello {
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        System.out.println("Input your name:");
        String name = scanner.nextLine();
        System.out.println("Input your age:");
        int age = scanner.nextInt();
        System.out.println("hi, "+ name + ", you are "+age);
      }
}

2.輸出

        System.out.println("輸出換行");
        System.out.print("輸出但不換行");

格式化輸出

用作簡訊模版,或控制字元格式使資料更易讀。

  • System.out.printf()
  • 使用佔位符%xxx
  • 常用的佔位符
    |%d 整數|%x 十六進位制整數|%f 浮點數|%% %字元本身|
    |--------|---------------|---------|-------------|
        double d = 3.1415926;
        System.out.println(d);
        System.out.printf("PI = %.2f\n", d);//保留2位小數點
        System.out.printf("PI = %7.2f\n", d);//一共7位
        System.out.printf("%s is %d years old\n","Bob",12);
        double f = 0.123456;
        System.out.printf("%f\n", f);
        System.out.printf("%e\n", f);//科學計數法表示小數
        System.out.printf("%.2f\n", f);
        System.out.printf("%6.2f\n", f);
        System.out.printf("%+.2f\n", f);//列印符號位
        //調整引數順序
        System.out.printf("%s %s %s \n", "A", "B", "C");
        System.out.printf("%2$s %1$s %1$s %3$s\n", "A", "B", "C");//1$s表示第一個引數
        //System.out.printf("%s %s","hello");//引數可以多,但不能少。少了會報java.util.MissingFormatArgumentException

https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html
搜尋Format String Syntax,即可找到更多引數說明。

總結

  • 輸出換行println()/不換行print()/格式化輸出printf()
  • 輸入nextLine()\nextInt()\nextDouble()...