1. 程式人生 > 程式設計 >Java輸入資料的知識點整理

Java輸入資料的知識點整理

Java程式開發過程中,需要從鍵盤獲取輸入值是常有的事。C語言提供scanf()函式,C++提供cin()獲取鍵盤輸入值。那麼Java有什麼解決方法呢?

方法一:從控制檯接收一個字元,然後將其打印出來

package pkg2020華南虎;
import java.io.*;
/**
 *
 * @author yl
 */
public class JavaInput {
  public static void main(String[] args) throws IOException {
    System.out.println("Enter a Char:");
    char i=(char)System.in.read();
    System.out.println("Your char is:"+i);
  }
}

雖然此方式實現了從鍵盤獲取輸入的字元,但是System.out.read()只能針對一個字元的獲取,同時,獲取進來的變數型別只能是char。當輸入數字時,還需要轉換型別。

方法二:從控制檯接收一個字串,然後將其打印出來。需要擁到BufferedReader類和InputStreamReader類。

package pkg2020華南虎;
import java.io.*;
/**
 *
 * @author yl
 */
public class JavaInput02 {
  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類

package pkg2020華南虎;
import java.util.Scanner;
/**
 *
 * @author yl
 */
public class JavaInput03 {
  public static void main(String[] args) {
    Scanner sc=new Scanner(System.in);
    System.out.println("Input your name:");
    String name=sc.nextLine();
    System.out.println("Input your age:");
    int age=sc.nextInt();
    System.out.println("Input your salary:");
    double salary=sc.nextDouble();
    System.out.println("Your information is follow as:");
    System.out.println("Name:"+name+"\n"+"Age:"+age+"\n"+"Salary:"+salary);
  }
}

最後總結一下next()和nextLine()的區別

在Java中,next()方法是不接收空格的,在接收到有效資料前,所有的空格或者tab鍵等輸入被忽略,若有有效資料,則遇到這些鍵退出。nextLine()可以接收空格或者tab鍵,其輸入應該以enter鍵結束。

以上就是本次介紹的全部相關知識點,感謝大家的學習和對我們的支援。