常見物件-Scanner類
Scanner的概述和構造方法原理:
package cn.itcast_01;
/*
* Scanner:用於接收鍵盤錄入資料。
*
* System類下有一個靜態的欄位:
* public static final InputStream in; 標準的輸入流,對應著鍵盤錄入。
*
* InputStream is = System.in;
*
* class Demo {
* public static final int x = 10;
* public static final Student s = new Student();
* }
* int y = Demo.x;
* Student s = Demo.s;
*
*
* 構造方法:
* Scanner(InputStream source)
*/
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
// 建立物件
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
System.out.println("x:" + x);
}
}
Scanner類的hasNextXxx()和nextXxx()方法:
package cn.itcast_02;
import java.util.Scanner;
/*
* 基本格式:
* public boolean hasNextXxx():判斷是否是某種型別的元素
* public Xxx nextXxx():獲取該元素
*
* 舉例:用int型別的方法舉例
* public boolean hasNextInt()
* public int nextInt()
*
* 注意:
* InputMismatchException:輸入的和你想要的不匹配
*/
public class ScannerDemo {
public static void main(String[] args) {
// 建立物件
Scanner sc = new Scanner(System.in);
// 獲取資料
if (sc.hasNextInt()) {
int x = sc.nextInt();
System.out.println("x:" + x);
} else {
System.out.println("你輸入的資料有誤");
}
}
}
Scanner獲取資料出現的小問題及解決方案:
package cn.itcast_03;
import java.util.Scanner;
/*
* 常用的兩個方法:
* public int nextInt():獲取一個int型別的值
* public String nextLine():獲取一個String型別的值
*
* 出現問題了:
* 先獲取一個數值,在獲取一個字串,會出現問題。
* 主要原因:就是那個換行符號的問題。
* 如何解決呢?
* A:先獲取一個數值後,在建立一個新的鍵盤錄入物件獲取字串。
* B:把所有的資料都先按照字串獲取,然後要什麼,你就對應的轉換為什麼。後面會學到把字串轉換成其他型別。
*/
public class ScannerDemo {
public static void main(String[] args) {
// 建立物件
Scanner sc = new Scanner(System.in);
// 獲取兩個int型別的值
// int a = sc.nextInt();
// int b = sc.nextInt();
// System.out.println("a:" + a + ",b:" + b);
// 獲取兩個String型別的值
// String s1 = sc.nextLine();
// String s2 = sc.nextLine();
// System.out.println("s1:" + s1 + ",s2:" + s2);
// 先獲取一個字串,再獲取一個int值
// String s1 = sc.nextLine();
// int b = sc.nextInt();
// System.out.println("s1:" + s1 + ",b:" + b);
// 先獲取一個int值,再獲取一個字串。先獲取一個數值,在獲取一個字串,會出現問題
// int a = sc.nextInt();
// String s2 = sc.nextLine();
// System.out.println("a:" + a + ",s2:" + s2);
int a = sc.nextInt();
Scanner sc2 = new Scanner(System.in);
String s = sc2.nextLine();
System.out.println("a:" + a + ",s:" + s);
}
}
相關文章
- 常見物件-Object類物件Object
- 常見物件-String類物件
- 常見物件-Arrays工具類物件
- 常見物件-String類-2物件
- 常見物件-String類-3物件
- 常見物件-String類-4物件
- 常見物件-基本型別包裝類物件型別
- Scanner物件物件
- Java Scanner物件Java物件
- 常見物件-Character物件
- Scanner類、Random類、ArrayList類random
- 常見物件-BigInteger物件
- 常見物件-BigDecimal物件Decimal
- Java程式設計基礎13——常見物件_String類Java程式設計物件
- 【答疑】物件儲存OSS常見問題解答(工具類1)物件
- 常見物件-StringBuffer物件
- js常見物件及方法JS物件
- 【答疑】物件儲存OSS常見問題解答(諮詢類2)物件
- 【答疑】物件儲存OSS常見問題解答(諮詢類1)物件
- 常見物件-String類的compareTo()方法的原始碼解析物件原始碼
- Java的方法Scanner類Java
- java中Scanner類使用Java
- 常見物件-字串的遍歷物件字串
- 常見儲存器分類
- Java 的常見 API 與物件克隆)JavaAPI物件
- 常見物件-字串反轉的案例物件字串
- 常見物件-字串反轉功能案例物件字串
- 14、Scanner、Random、ArrayList、匿名物件、物件陣列random物件陣列
- RAC(Reactive Cocoa)常見的類React
- Android 常見工具類封裝Android封裝
- 類别範本的常見用法
- Java中Scanner類的常用方法Java
- 常見問題--oracle物件不存在Oracle物件
- JDK1.8原始碼解析(常見類)JDK原始碼
- 一些常見的C#類C#
- ASP.NET常見物件之Request與ResponseASP.NET物件
- 常見物件-模擬使用者登入案例物件
- 常見物件-把int陣列拼接字串的案例物件陣列字串