String類型

 String——字符串

一、String對象中的常用方法

字符串是一個字符序列,並且是一個引用類型。首先簡單地介紹一下String對象的一些簡單的方法:

1、length():返回字符串的字符數;

2、charAt(index):返回字符串s中所指定位置上的字符,index表示下標;

3、concat(參數——字符串):將本字符串和參數字符串連接,返回一個新的字符串;

4、toUpperCase():返回一個新的字符串,其中所有的字母大寫;

5、toLowerCase():返回一個新的字符串,其中所有的字母大寫;

6、trim():返回一個新的字符串,去掉了兩邊的空白字符。例:

class Test06{
    public static void main(String[] args){
        String str1="abCDef";
        String str2=" abcdef ";
        System.out.println("字符串str1的長度爲:"+str1.length());
        System.out.println("輸出字符串str1中下標爲2的字符:"+str1.charAt(2));
        System.out.println("拼接字符串str1與str2之後得:"+str1.concat(str2));
        System.out.println("將字符串str1中的字母全部轉化爲大寫:"+str1.toUpperCase());
        System.out.println("將字符串str1中的字母全部轉化爲小寫:"+str1.toLowerCase());
        System.out.println("將字符串str2中的兩邊的空格去掉爲:"+str2.trim());
    }
}

/* 
運行結果:
字符串str1的長度爲:6
輸出字符串str1中下標爲2的字符:C
拼接字符串str1與str2之後得:abCDef abcdef
將字符串str1中的字母全部轉化爲大寫:ABCDEF
將字符串str1中的字母全部轉化爲小寫:abcdef
將字符串str2中的兩邊的空格去掉爲:abcdef
*/

 二、從控制檯讀取字符串

爲了從控制檯讀取字符串,調用Scanner對象上的next()。例如:下面的代碼就可以從鍵盤讀取三個字符串:

import java.util.Scanner;
class Test07{
    public static void main(String[] args){
        Scanner input=new Scanner(System.in);
        System.out.print("Enter a string:");
        String str1=input.next();
        String str2=input.next();
        String str3=input.next();
        System.out.println("str1="+str1);
        System.out.println("str2="+str2);
        System.out.println("str3="+str3);
    }
}
/*
運行結果:
Enter a string:Welcome to xian
str1=Welcome
str2=to
str3=xian
 */

 特別提醒:next()方法的讀取是以空白字符結束的字符串;可以使用neatLine()方法讀取以按下回車鍵爲結束標誌的字符串。例:

import java.util.Scanner;
class Test07{
    public static void main(String[] args){
        Scanner input=new Scanner(System.in);
        System.out.print("Enter a string:");
        String str1=input.nextLine();
        System.out.println("str1="+str1);
    }
}
/*
運行結果:
Enter a string:welcome to xian
str1=welcome to xian
 */

 三、字符串比較

先簡單的介紹一下String對象的比較方法

1、equals(參數——字符串):如果該字符串等於參數字符串,返回true;

2、equalsIgnoreCase(參數——字符串):如果字符串等於參數字符串,返回true,切記不區分大小寫;

3、compareTo(參數——字符串):返回一個大於0、等於0、小於0的整數,表明一個字符串是否大於、 等於或者小於s1;

4、compareToCase(參數——字符串):和3一樣,就是區分大小寫;

5、contains(參數——字符串):如果參數字符串是該字符串的子字符串,返回true。

class Test07{
    public static void main(String[] args){
        String str1="AbcdEf";
        String str2="Abcd";
        String str3="aBcdeF";
        String str4="AbcdEf";
        System.out.println("str1是否與str4相等:"+str1.equals(str4));
        System.out.println("str1是否與str3相等:"+str1.equalsIgnoreCase(str4));
        System.out.println("str1是否與str2相等:"+str1.compareTo(str2));
        System.out.println("str1是否與str3相等:"+str1.compareToIgnoreCase(str3));
        System.out.println("str2是否是str1的子串:"+"AbcdEf".contains("Abcd"));
    }
}
/*
運行結果:
str1是否與str4相等:true
str1是否與str3相等:true
str1是否與str2相等:2
str1是否與str3相等:0
str2是否是str1的子串:true
 */

 四、獲取字符串中的字符或者子串

String類包含獲取子串的方法

五、獲得子字符串

1、substring(參數——數字):返回該字符串的子串,從特定的位置參數字符的下標開始一直到該字符串結束;

2、substring(參數1——數字,參數2——數字):返回的是該字符串中的下標所指定的區間上所對應的字符串。

class Test07{
    public static void main(String[] args){
        String str1="I am a good student";
        String str2="you are a good teacher";
        String str3="";//放小的
        String str4="";//存放大的
        int k=1;//存放較小的字符串長度
        String str="";
        boolean flag=true;
        if(str1.length()>=str2.length()){
            k=str2.length();
            str3=str2;
            str4=str1;
        }else{
            k=str1.length();
            str3=str1;
            str4=str2;
        }

        for(int i=0;i<k;i++){
            for(int j=0;j<=k-1-i;j++){
                String str=str3.substring(j,k-1-i);
                if(str4.contains(str)){
                    flag=false;
                    System.out.println("asdf "+str);
                    break;
                }
            }
            if(!flag){
                break;
            }
        }
    }
}

 

 

 

 

 

 

發佈了15 篇原創文章 · 獲贊 8 · 訪問量 4497
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章