應用過程中,java中scanner提供的方法雖多,但是實用的沒有幾個,
總結如下:
1、獲取字符串的長度
length()
2 、判斷字符串的前綴或后綴與已知字符串是否相同
前綴 startsWith(String s)
后綴 endsWith(String s)
3、比較兩個字符串
equals(String s)
4、把字符串轉化為相應的數值
int 型 Integer.parseInt(字符串)
long 型 Long.parseLong(字符串)
float 型 Folat.valueOf(字符串).floatValue()
double 型 Double.valueOf(字符串).doubleValue()
5、將數值轉化為字符串
valueOf(數值)
6、字符串檢索
indexOf(Srting s) 從頭開始檢索
indexOf(String s ,int startpoint) 從startpoint 處開始檢索
如果沒有檢索到,將返回-1
7、得到字符串的子字符串
substring(int startpoint) 從startpoint 處開始獲取
substring(int start,int end) 從start 到end 中間的字符
8、替換字符串中的字符,去掉字符串前后空格
replace(char old,char new) 用new 替換old
trim()
9、分析字符串
StringTokenizer(String s) 構造一個分析器,使用默認分隔字符(空格,換行,回車,Tab,進紙符)
StringTokenizer(String s,String delim) delim是自己定義的分隔符
nextToken() 逐個獲取字符串中的語言符號
boolean hasMoreTokens() 只要字符串還有語言符號將返回true,否則返回false
countTokens() 得到一共有多少個語言符號
@parm 在處理多個文件,或者說有規律文件時。同時需要截取多個數據在集合中做處理。讀取的辦法 走單行讀取 后期處理麻煩,我的建議是使用正則表達式
優點:省時省力
涉及到的類
StringTokenizer
String
pattern
matcher;
···
package core.java.util;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.util.StringTokenizer;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
@author DGW
@date 2017 2017年4月16日 下午3:21:02
-
@filename ScannerClass.java
/
@SuppressWarnings("unused")
public class ScannerClass {
public static void main(String[] args) throws FileNotFoundException {
/
* StringTokenizer(String s) 構造一個分析器,
* 使用默認分隔字符(空格,換行,回車,Tab,進紙符)
* 在處理有規律的文件數據時,可以采用分析字符串p
*/
String str="123123,21321213,2321321";
StringTokenizer tokenizer = new StringTokenizer(str);
while (tokenizer.hasMoreElements()) {
System.out.println(tokenizer.nextToken(","));
}//替代方法2 第二參數可以指定分割的個數 String[] split = str.split(",",2); for (int i = 0; i < split.length; i++) { System.out.println(split[i]); } //理由正則表達式匹配 String rex="\\,"; Pattern pattern=Pattern.compile(rex); String[] strings = pattern.split(str); for (int i = 0; i < strings.length; i++) { System.out.println(strings[i]); } Matcher matcher = pattern.matcher(str); System.out.println(matcher.find());
}
public static void example2() throws FileNotFoundException {
/*
* 掃描文件輸出
*/
FileInputStream fileInput = new FileInputStream(
new File("E:\WorkSpace\JavaCoreApi\src\core\java\lang\StringClass.java"));
Scanner input = new Scanner(fileInput);
while (input.hasNext()) {
System.out.println(input.next());
}
input.close();
}private static void example1() {
/*
* 模擬控制臺輸出
*/
Scanner input = new Scanner(System.in);
while (true) {
String line = input.nextLine();
if (line.equals("exit"))
break;
System.out.println("------>" + line);} input.close();
}
}
···