JAVA學習筆記07
常見對象(Scanner的概述和方法介紹)
* A:Scanner的概述
* B:Scanner的構造方法原理
* Scanner(InputStream source)
* System類下有一個靜態的字段:
* public static final InputStream in; 標準的輸入流,對應著鍵盤錄入。
* C:一般方法
* hasNextXxx() 判斷是否還有下一個輸入項,其中Xxx可以是Int,Double等。如果需要判斷是否包含下一個字符串,則可以省略Xxx
* nextXxx() 獲取下一個輸入項。Xxx的含義和上個方法中的Xxx相同,默認情況下,Scanner使用空格,回車等作為分隔符
常見對象(Scanner獲取數據出現的小問題及解決方案)
* A:兩個常用的方法:
* public int nextInt():獲取一個int類型的值
* public String nextLine():獲取一個String類型的值
常見對象(String類的概述)
* A:String類的概述
* 通過JDK提供的API,查看String類的說明
* 可以看到這樣的兩句話。
* a:字符串字面值"abc"也可以看成是一個字符串對象。
* b:字符串是常量,一旦被賦值,就不能被改變。
常見對象(String類的構造方法)
* A:常見構造方法
* public String():空構造
* public String(byte[] bytes):把字節數組轉成字符串
* public String(byte[] bytes,int index,int length):把字節數組的一部分轉成字符串
* public String(char[] value):把字符數組轉成字符串
* public String(char[] value,int index,int count):把字符數組的一部分轉成字符串
* public String(String original):把字符串常量值轉成字符串
常見對象(String類的判斷功能)
* A:String類的判斷功能
* boolean equals(Object obj):比較字符串的內容是否相同,區分大小寫
* boolean equalsIgnoreCase(String str):比較字符串的內容是否相同,忽略大小寫
* boolean contains(String str):判斷大字符串中是否包含小字符串
* boolean startsWith(String str):判斷字符串是否以某個指定的字符串開頭
* boolean endsWith(String str):判斷字符串是否以某個指定的字符串結尾
* boolean isEmpty():判斷字符串是否為空。
常見對象(模擬用戶登錄)
* A:案例演示
* 需求:模擬登錄,給三次機會,並提示還有幾次。
* 用戶名和密碼都是admin
1 package com.heima.test; 2 3 import java.util.Scanner; 4 5 public class Test1 { 6 7 /** 8 * * A:案例演示 9 * 需求:模擬登錄,給三次機會,並提示還有幾次。 10 * 用戶名和密碼都是admin 11 * 分析: 12 * 1,模擬登錄,需要鍵盤錄入,Scanner 13 * 2,給三次機會,需要循環,for 14 * 3,並提示有幾次,需要判斷,if 15 */ 16 public static void main(String[] args) { 17 Scanner sc = new Scanner(System.in); //創建鍵盤錄入對象 18 19 for(int i = 0; i < 3; i++) { 20 System.out.println("請輸入用戶名:"); 21 String userName = sc.nextLine(); //將鍵盤錄入的用戶名存儲在userName中 22 System.out.println("請輸入密碼:"); 23 String password = sc.nextLine(); //將鍵盤錄入的密碼存儲在password中 24 25 //如果是字符串常量和字符串變量比較,通常都是字符串常量調用方法,將變量當作參數傳遞,防止空指針異常 26 if("admin".equals(userName) && "admin".equals(password)) { 27 System.out.println("歡迎" + userName + "登錄"); 28 break; //跳出循環 29 }else { 30 if(i == 2) { 31 System.out.println("您的錯誤次數已到,請明天再來吧"); 32 }else { 33 System.out.println("錄入錯誤,您還有" + (2-i) + "次機會"); 34 } 35 } 36 37 } 38 } 39 40 }
常見對象(String類的獲取功能)
* A:String類的獲取功能
* int length():獲取字符串的長度。
* char charAt(int index):獲取指定索引位置的字符
* int indexOf(int ch):返回指定字符在此字符串中第一次出現處的索引。
* int indexOf(String str):返回指定字符串在此字符串中第一次出現處的索引。
* int indexOf(int ch,int fromIndex):返回指定字符在此字符串中從指定位置後第一次出現處的索引。
* int indexOf(String str,int fromIndex):返回指定字符串在此字符串中從指定位置後第一次出現處的索引。
* lastIndexOf
* String substring(int start):從指定位置開始截取字符串,默認到末尾。
* String substring(int start,int end):從指定位置開始到指定位置結束截取字符串。
常見對象(String類的轉換功能)
* A:String的轉換功能:
* byte[] getBytes():把字符串轉換為字節數組。
* char[] toCharArray():把字符串轉換為字符數組。
* static String valueOf(char[] chs):把字符數組轉成字符串。
* static String valueOf(int i):把int類型的數據轉成字符串。
* 註意:String類的valueOf方法可以把任意類型的數據轉成字符串
* String toLowerCase():把字符串轉成小寫。
* String toUpperCase():把字符串轉成大寫。
* String concat(String str):把字符串拼接。
JAVA學習筆記07