Scanner的概述和方法介紹

2021-07-05 17:59:34 字數 4717 閱讀 3815

a:scanner的概述

* b:scanner的構造方法原理

* scanner(inputstream source)

* system類下有乙個靜態的字段:

* public static final inputstream in; 標準的輸入流,對應著鍵盤錄入。

* c:一般方法

* hasnext***()  判斷是否還有下乙個輸入項,其中***可以是int,double等。如果需要判斷是否包含下乙個字串,則可以省略***

* next***()  獲取下乙個輸入項。***的含義和上個方法中的***相同,預設情況下,scanner使用空格,回車等作為分隔符

###12.02_常見物件(scanner獲取資料出現的小問題及解決方案)(掌握)

* a:兩個常用的方法:

* public int nextint():獲取乙個int型別的值

* public string nextline():獲取乙個string型別的值

* b:案例演示

* a:先演示獲取多個int值,多個string值的情況

* b:再演示先獲取int值,然後獲取string值出現問題

* c:問題解決方案

* 第一種:先獲取乙個數值後,在建立乙個新的鍵盤錄入物件獲取字串。

* 第二種:把所有的資料都先按照字串獲取,然後要什麼,你就對應的轉換為什麼。(後面講)

###12.03_常見物件(string類的概述)(掌握)

* a:string類的概述

* 通過jdk提供的api,檢視string類的說明

* 可以看到這樣的兩句話。

* a:字串字面值"abc"也可以看成是乙個字串物件。

* b:字串是常量,一旦被賦值,就不能被改變。

###12.04_常見物件(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):把字串常量值轉成字串

* b:案例演示

* 演示string類的常見構造方法

###12.05_常見物件(string類的常見面試題)(掌握)

* 1.判斷定義為string型別的s1和s2是否相等

* string s1 = "abc";

* string s2 = "abc";

* system.out.println(s1 == s2);

* system.out.println(s1.equals(s2));

* 2.下面這句話在記憶體中建立了幾個物件?

* string s1 = new string("abc");

* 3.判斷定義為string型別的s1和s2是否相等

* string s1 = new string("abc");

* string s2 = "abc";

* system.out.println(s1 == s2); ?

* system.out.println(s1.equals(s2)); ?

* 4.判斷定義為string型別的s1和s2是否相等

* string s1 = "a" + "b" + "c";

* string s2 = "abc";

* system.out.println(s1 == s2); ?

* system.out.println(s1.equals(s2)); ?

* 5.判斷定義為string型別的s1和s2是否相等

* string s1 = "ab";

* string s2 = "abc";

* string s3 = s1 + "c";

* system.out.println(s3 == s2);

* system.out.println(s3.equals(s2)); ?

###12.06_常見物件(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():判斷字串是否為空。

###12.07_常見物件(模擬使用者登入)(掌握)

* a:案例演示

* 需求:模擬登入,給三次機會,並提示還有幾次。

* 使用者名稱和密碼都是admin

###12.08_常見物件(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):從指定位置開始到指定位置結束擷取字串。

###12.09_常見物件(字串的遍歷)(掌握)

* a:案例演示

* 需求:遍歷字串

###12.10_常見物件(統計不同型別字元個數)(掌握)

* a:案例演示

* 需求:統計乙個字串中大寫字母字元,小寫字母字元,數字字元出現的次數,其他字元出現的次數。

* abcdeabcd123456!@#$%^

###12.11_常見物件(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):把字串拼接。

###12.12_常見物件(按要求轉換字元)(鏈式程式設計掌握)

* a:案例演示

* 需求:把乙個字串的首字母轉成大寫,其餘為小寫。(只考慮英文大小寫字母字元)

###12.13_常見物件(把陣列轉成字串)

* a:案例演示

* 需求:把陣列中的資料按照指定個格式拼接成乙個字串

* 舉例:

* int arr = ;

* 輸出結果:

* "[1, 2, 3]"

###12.14_常見物件(string類的其他功能)

* a:string的替換功能及案例演示

* string replace(char old,char new)

* string replace(string old,string new)

* b:string的去除字串兩空格及案例演示

* string trim()

* c:string的按字典順序比較兩個字串及案例演示

* int compareto(string str)(暫時不用掌握)

* int comparetoignorecase(string str)(了解)

###12.15_常見物件(字串反轉)

* a:案例演示

* 需求:把字串反轉

* 舉例:鍵盤錄入"abc"

* 輸出結果:"cba"

###12.16_常見物件(在大串中查詢小串出現的次數思路**)

* a:畫圖演示

* 需求:統計大串中小串出現的次數

* 這裡的大串和小串可以自己根據情況給出

###12.17_常見物件(在大串中查詢小串出現的次數**實現)

* a:案例演示

* 統計大串中小串出現的次數

Java中Split方法和Scanner類

split函式和scanner類都可以使用正規表示式實現字串分割。例如從命令列接受一行字串如 1 2 注意1前面有多個空格,1與2之間有多個空格 split inputstreamreader isr new inputstreamreader system.in bufferedreader br...

Scanner類中hasNext 方法的解析

今天測試j a 需要用到控制台輸入,這就需要scanner類中的方法,但是對其中的hasnext 方法不是特別理解,如下是對該方法的粗淺理解。hasnext 方法,其源 如下 public boolean hasnext readinput boolean result hastokeninbuff...

Thread 概述和幾種狀態介紹

thread 的作用只是為了更好的利用cpu 我們有兩種方式來實現執行緒 1.繼承thread 類 2.實現runable介面 執行緒大概可分為5個狀態,1.建立狀態,2.就緒狀態,3.執行狀態,4.阻塞狀態,5.死亡狀態。建立狀態一般是剛new出來的物件 就緒狀態是呼叫start 後狀態 執行狀態...