欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一文詳解Java中字符串的基本操作

 更新時(shí)間:2022年08月26日 08:57:31   作者:夏志121  
這篇文章主要為大家詳細(xì)介紹了Java中字符串的基本操作,例如遍歷、統(tǒng)計(jì)次數(shù),拼接和反轉(zhuǎn)等以及String的常用方法,感興趣的可以了解一下

一、遍歷字符串案例

需求:鍵盤(pán)錄入一個(gè)字符串,使用程序?qū)崿F(xiàn)在控制臺(tái)遍歷該字符串

思路:

1、鍵盤(pán)錄入一個(gè)字符串,用 Scanner 實(shí)現(xiàn)

2、遍歷字符串,首先要能夠獲取到字符串中的每一個(gè)字符

public char charAt(int index):返回指定索引處的char值,字符串的索引也是從0開(kāi)始的

3、遍歷字符串,其次要能夠獲取到字符串的長(zhǎng)度

public int length():返回此字符串的長(zhǎng)度

數(shù)組的長(zhǎng)度:數(shù)組名.length

字符串的長(zhǎng)度:字符串對(duì)象.length()

4、遍歷字符串的通用格式

代碼實(shí)現(xiàn):

public class StringTest02 {
    public static void main(String[] args) {
        //鍵盤(pán)錄入一個(gè)字符串,用 Scanner 實(shí)現(xiàn)
        Scanner sc = new Scanner(System.in);
        System.out.println("請(qǐng)輸入一個(gè)字符串:");
        String line = sc.nextLine();
        for(int i=0; i<line.length(); i++) {
            System.out.println(line.charAt(i));
        }
    }
}

二、統(tǒng)計(jì)字符次數(shù)案例

需求:鍵盤(pán)錄入一個(gè)字符串,統(tǒng)計(jì)該字符串中大寫(xiě)字母字符,小寫(xiě)字母字符,數(shù)字字符出現(xiàn)的次數(shù)(不考慮其他字符)

思路:

1、鍵盤(pán)錄入一個(gè)字符串,用 Scanner 實(shí)現(xiàn)

2、要統(tǒng)計(jì)三種類型的字符個(gè)數(shù),需定義三個(gè)統(tǒng)計(jì)變量,初始值都為0

3、遍歷字符串,得到每一個(gè)字符

4、判斷該字符屬于哪種類型,然后對(duì)應(yīng)類型的統(tǒng)計(jì)變量+1

假如ch是一個(gè)字符,我要判斷它屬于大寫(xiě)字母,小寫(xiě)字母,還是數(shù)字,直接判斷該字符是否在對(duì)應(yīng)的范圍即可

大寫(xiě)字母:ch>='A' && ch<='Z'

小寫(xiě)字母: ch>='a' && ch<='z'

數(shù)字: ch>='0' && ch<='9'

5、輸出三種類型的字符個(gè)數(shù)

代碼實(shí)現(xiàn):

public class StringTest03 {
    public static void main(String[] args) {
        //鍵盤(pán)錄入一個(gè)字符串,用 Scanner 實(shí)現(xiàn)
        Scanner sc = new Scanner(System.in);
        System.out.println("請(qǐng)輸入一個(gè)字符串:");
        String line = sc.nextLine();
        //要統(tǒng)計(jì)三種類型的字符個(gè)數(shù),需定義三個(gè)統(tǒng)計(jì)變量,初始值都為0
        int bigCount = 0;
        int smallCount = 0;
        int numberCount = 0;
        //遍歷字符串,得到每一個(gè)字符
        for(int i=0; i<line.length(); i++) {
            char ch = line.charAt(i);
            //判斷該字符屬于哪種類型,然后對(duì)應(yīng)類型的統(tǒng)計(jì)變量+1
            if(ch>='A' && ch<='Z') {
                bigCount++;
            } else if(ch>='a' && ch<='z') {
                smallCount++;
            } else if(ch>='0' && ch<='9') {
                numberCount++;
            }
        }
        //輸出三種類型的字符個(gè)數(shù)
        System.out.println("大寫(xiě)字母:" + bigCount + "個(gè)");
        System.out.println("小寫(xiě)字母:" + smallCount + "個(gè)");
        System.out.println("數(shù)字:" + numberCount + "個(gè)");
    }
}

三、字符串拼接案例

需求:定義一個(gè)方法,把int數(shù)組中的數(shù)據(jù)按照指定的格式拼接成一個(gè)字符串返回,調(diào)用該方法,并在控制臺(tái)輸出結(jié)果。例如,數(shù)組int[] arr = {1,2,3};,執(zhí)行方法后的輸出結(jié)果為:[1,2,3]

思路:

1、定義一個(gè) int 類型的數(shù)組,用靜態(tài)初始化完成數(shù)組元素的初始化

2、定義一個(gè)方法,用于把 int 數(shù)組中的數(shù)據(jù)按照指定格式拼接成一個(gè)字符串返回。

返回值類型 String,參數(shù)列表 int[] arr

3、在方法中遍歷數(shù)組,按照要求進(jìn)行拼接

4、調(diào)用方法,用一個(gè)變量接收結(jié)果

5、輸出結(jié)果

代碼實(shí)現(xiàn):

public class StringTest04 {
    public static void main(String[] args) {
        //定義一個(gè) int 類型的數(shù)組,用靜態(tài)初始化完成數(shù)組元素的初始化
        int[] arr = {1, 2, 3};
        //調(diào)用方法,用一個(gè)變量接收結(jié)果
        String s = arrayToString(arr);
        //輸出結(jié)果
        System.out.println("s:" + s);
    }
    //定義一個(gè)方法,用于把 int 數(shù)組中的數(shù)據(jù)按照指定格式拼接成一個(gè)字符串返回
    /*
        兩個(gè)明確:
            返回值類型:String
            參數(shù):int[] arr
     */
    public static String arrayToString(int[] arr) {
        //在方法中遍歷數(shù)組,按照要求進(jìn)行拼接
        String s = "";
        s += "[";
        for(int i=0; i<arr.length; i++) {
            if(i==arr.length-1) {
                s += arr[i];
            } else {
                s += arr[i];
                s += ", ";
            }
        }
        s += "]";
        return s;
    }
}

四、字符串反轉(zhuǎn)案例

需求:定義一個(gè)方法,實(shí)現(xiàn)字符串反轉(zhuǎn)。鍵盤(pán)錄入一個(gè)字符串,調(diào)用該方法后,在控制臺(tái)輸出結(jié)果

例如,鍵盤(pán)錄入abc,輸出結(jié)果cba

思路:

1、鍵盤(pán)錄入一個(gè)字符串,用 Scanner 實(shí)現(xiàn)

2、定義一個(gè)方法,實(shí)現(xiàn)字符串反轉(zhuǎn)。返回值類型 String,參數(shù) String s

3、在方法中把字符串倒著遍歷,然后把每一個(gè)得到的字符拼接成一個(gè)字符串并返回

4、調(diào)用方法,用一個(gè)變量接收結(jié)果

5、輸出結(jié)果

代碼實(shí)現(xiàn):

public class StringTest05 {
    public static void main(String[] args) {
        //鍵盤(pán)錄入一個(gè)字符串,用 Scanner 實(shí)現(xiàn)
        Scanner sc = new Scanner(System.in);
        System.out.println("請(qǐng)輸入一個(gè)字符串:");
        String line = sc.nextLine();
        //調(diào)用方法,用一個(gè)變量接收結(jié)果
        String s = reverse(line);
        //輸出結(jié)果
        System.out.println("s:" + s);
    }
    //定義一個(gè)方法,實(shí)現(xiàn)字符串反轉(zhuǎn)
    /*
        兩個(gè)明確:
            返回值類型:String
            參數(shù):String s
     */
    public static String reverse(String s) {
        //在方法中把字符串倒著遍歷,然后把每一個(gè)得到的字符拼接成一個(gè)字符串并返回
        String ss = "";
        for(int i=s.length()-1; i>=0; i--) {
            ss += s.charAt(i);
        }
        return ss;
    }
}

五、幫助文檔查看String常用方法

方法名說(shuō)明
public boolean equals(Object anObject)比較字符串的內(nèi)容,嚴(yán)格區(qū)分大小寫(xiě)(用戶名和密碼)
public char charAt(int index)返回執(zhí)行索引處的char值
public int length()返回此字符串的長(zhǎng)度

到此這篇關(guān)于一文詳解Java中字符串的基本操作的文章就介紹到這了,更多相關(guān)Java字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • sentinel整合ribbon與fallback流程分步講解

    sentinel整合ribbon與fallback流程分步講解

    這篇文章主要介紹了sentinel整合ribbon與fallback分步流程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 利用線程實(shí)現(xiàn)動(dòng)態(tài)顯示系統(tǒng)時(shí)間

    利用線程實(shí)現(xiàn)動(dòng)態(tài)顯示系統(tǒng)時(shí)間

    編寫(xiě)Applet小程序,通過(guò)在HTML文檔中接收參數(shù),顯示當(dāng)前的系統(tǒng)時(shí)間,需要的朋友可以參考下
    2015-10-10
  • java本機(jī)內(nèi)存分配Native?memory?allocation?mmap失敗問(wèn)題解決

    java本機(jī)內(nèi)存分配Native?memory?allocation?mmap失敗問(wèn)題解決

    這篇文章主要介紹了java本機(jī)內(nèi)存分配Native?memory?allocation?mmap失敗問(wèn)題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • Spring Security整合Oauth2實(shí)現(xiàn)流程詳解

    Spring Security整合Oauth2實(shí)現(xiàn)流程詳解

    這篇文章主要介紹了Spring Security整合Oauth2實(shí)現(xiàn)流程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • springboot使用IDEA遠(yuǎn)程Debug

    springboot使用IDEA遠(yuǎn)程Debug

    項(xiàng)目上線之后,如果日志打印的很模糊或者業(yè)務(wù)邏輯比較復(fù)雜,有時(shí)候無(wú)法定位具體的錯(cuò)誤原因,因此可以通過(guò)IDEA遠(yuǎn)程代理進(jìn)行Debug,本文就來(lái)介紹一下如何使用
    2021-06-06
  • JAVA?POI設(shè)置EXCEL單元格格式用法舉例

    JAVA?POI設(shè)置EXCEL單元格格式用法舉例

    這篇文章主要給大家介紹了關(guān)于JAVA?POI設(shè)置EXCEL單元格格式用法的相關(guān)資料,POI中可能會(huì)用到一些需要設(shè)置EXCEL單元格格式的操作,需要的朋友可以參考下
    2023-08-08
  • 簡(jiǎn)單記事本java源碼實(shí)例

    簡(jiǎn)單記事本java源碼實(shí)例

    這篇文章主要介紹了簡(jiǎn)單記事本java源碼,以一個(gè)完整的實(shí)例形式分析了記事本的Java實(shí)現(xiàn)方法,對(duì)于Java應(yīng)用程序的開(kāi)發(fā)有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-11-11
  • Mybatis如何通過(guò)接口實(shí)現(xiàn)sql執(zhí)行原理解析

    Mybatis如何通過(guò)接口實(shí)現(xiàn)sql執(zhí)行原理解析

    為了簡(jiǎn)化MyBatis的使用,MyBatis提供了接口方式自動(dòng)化生成調(diào)用過(guò)程,可以大大簡(jiǎn)化MyBatis的開(kāi)發(fā),下面這篇文章主要給大家介紹了關(guān)于Mybatis如何通過(guò)接口實(shí)現(xiàn)sql執(zhí)行原理解析的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • 解決idea 通過(guò)build project 手動(dòng)觸發(fā)熱部署失敗的問(wèn)題

    解決idea 通過(guò)build project 手動(dòng)觸發(fā)熱部署失敗的問(wèn)題

    在debug運(yùn)行項(xiàng)目的過(guò)程中,并且保證(不添加方法,不修改方法名)一定的規(guī)則的情況下,可以通過(guò)build project 來(lái)手動(dòng)熱部署項(xiàng)目,本文給大家介紹解決idea 通過(guò)build project 手動(dòng)觸發(fā)熱部署失敗的問(wèn)題,感興趣的朋友一起看看吧
    2023-12-12
  • Java中dubbo+zookeeper微服務(wù)架構(gòu)簡(jiǎn)介

    Java中dubbo+zookeeper微服務(wù)架構(gòu)簡(jiǎn)介

    Apache Dubbo是一款高性能的 Java RPC 框架,這篇文章主要介紹了Java中dubbo+zookeeper微服務(wù)架構(gòu),需要的朋友可以參考下
    2021-09-09

最新評(píng)論