1. 程式人生 > >Java的輸入和輸出

Java的輸入和輸出

一、Java的輸入

方法一:從控制檯接收一個字元,然後將其打印出來 import java.io.*; public static void main(String [] args) throws IOException{           System.out.print("Enter a Char:");           char i = (char) System.in.read();           System.out.println("your char is :"+i);  }  雖然此方式實現了從鍵盤獲取輸入的字元,但是System.out.read()只能針對一個字元的獲取,同時,獲取進來的變數的型別只能是char,當我們輸入一個數字,希望得到的也是一個整型變數的時候,我們還得修改其中的變數型別,這樣就顯得比較麻煩。
方法二:從控制檯接收一個字串,然後將其打印出來。 在這個題目中,我們需要用到BufferedReader類和InputStreamReader類 import java.io.*; public static void main(String [] args) throws IOException{             BufferedReader br = new BufferedReader(new InputStreamReader(System.in));             String str = null;             System.out.println("Enter your value:");             str = br.readLine();             System.out.println("your value is :"+str);  } 這樣我們就能獲取我們輸入的字串。
方法三:這種方法我認為是最簡單,最強大的,就是用Scanner類
import java.util.Scanner; public static void main(String [] args) {           Scanner sc = new Scanner(System.in);           System.out.println("請輸入你的姓名:");           String name = sc.nextLine();           System.out.println("請輸入你的年齡:");           int age = sc.nextInt();           System.out.println("請輸入你的工資:");           float salary = sc.nextFloat();           System.out.println("你的資訊如下:");           System.out.println("姓名:"+name+"\n"+"年齡:"+age+"\n"+"工資:"+salary);  } 這段程式碼已經表明,Scanner類不管是對於字串還是整型資料或者float型別的變數,只需做一點小小的改變,就能夠實現功能!無疑他是最強大的!   注:在java中,next()方法是不接收空格的,在接收到有效資料前,所有的空格或者tab鍵等輸入被忽略,若有有效資料,則遇到這些鍵退出。nextLine()可以接收空格或者tab鍵,其輸入應該以enter鍵結束。

一、Java的輸出

1.    Sys.out.println("Hello Word")       //輸出並且換行


 

2.    Sys.out.print("Hello Word")       //輸出不換行


 

3.    Sys.out.printf("姓名:"+%s,name)       //按格式輸出 目前printf支援以下格式: 
          %c        單個字元 
          %d        十進位制整數 
          %f        十進位制浮點數 
          %o        八進位制數 
          %s        字串 
          %u        無符號十進位制數 
          %x        十六進位制數 
          %%        輸出百分號%  下面對組成格式說明的各項加以說明: 
①%:表示格式說明的起始符號,不可缺少。 
②-:有-表示左對齊輸出,如省略表示右對齊輸出。 
③0:有0表示指定空位填0,如省略表示指定空位不填。 
④m.n:m指域寬,即對應的輸出項在輸出裝置上所佔的字元數。N指精度。用於說明輸出的實型數的小數位數。為指定n時,隱含的精度為n=6位。 
⑤l或h:l對整型指long型,對實型指double型。h用於將整型的格式字元修正為short型。 
1 package com.hone.test;
 2 
 3 // "%"表示進行格式化輸出, "%"之後的內容為格式的定義。
 4 public class Printf {
 5     public static void main(String[] args) {
 6         double d = 345.678;
 7         String s = "hello World";
 8         int a = 123;
 9         
10                 //浮點型的輸出
11         System.out.printf("%,d",a);            //格式化輸出資料,每三個資料加上一個,
12         System.out.println();
13         System.out.printf("%f", d);            // 345.678000
14         System.out.println();
15             //"9.2"中的9表示輸出的長度,2表示小數點後的位數。  345.678位數不夠前面不上空格
16         System.out.printf("%9.3f", d);    
17         System.out.println();
18         System.out.printf("%+9.3f", d);            //"+"表示輸出的數帶正負號
19         System.out.println();
20         System.out.printf("%-9.3f", d);            //"-"表示輸出的數左對齊(預設為右對齊)
21         System.out.println();
22         System.out.printf("%+-9.3f",d);            //"+-"表示輸出的數帶正負號且左對齊
23         System.out.println();
24         
25                 //整型的輸出
26         System.out.printf("%d", a);                //"d"表示輸出十進位制整數。
27         System.out.println();
28         System.out.printf("%04d", a);            //規定為4位,不夠左邊新增0
29         System.out.println();
30         System.out.printf("%d%%", a);            //如果想輸出百分數,則連續用兩個  %%
31         System.out.println();
32         System.out.printf("%o", a);                //"o"表示輸出八進位制整數。
33         System.out.println();
34         System.out.printf("%x", a);                //"x"表示輸出八進位制整數。
35         
36         
37         //字串的輸出
38         System.out.println();
39         System.out.printf("%s%n", s);                //輸出字串,其中 %n表示換行
40         
41         System.out.printf("輸出一個浮點數:%.3f,一個整數:%d,一個字串:%s",d,a,s);        //輸出多個變數
42         
43     }
44 
45 }
View Code