国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

java遍歷字符串的方法

這篇具有很好參考價(jià)值的文章主要介紹了java遍歷字符串的方法。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

java 遍歷字符串,java,jvm,數(shù)據(jù)結(jié)構(gòu)

?

在 java中,我們需要遍歷字符串,如何遍歷呢?首先我們先了解一下遍歷的概念: 在我們的計(jì)算機(jī)中,存儲(chǔ)的都是二進(jìn)制數(shù)據(jù),為了方便存儲(chǔ)和管理,我們把一段數(shù)據(jù)分成多個(gè)字符串。在 java中,遍歷字符串是使用 set ()方法進(jìn)行的。 set ()方法可以使用構(gòu)造函數(shù)和自動(dòng)構(gòu)造函數(shù)進(jìn)行遍歷操作。另外還可以通過(guò) findall ()方法進(jìn)行遍歷操作。在下面我們就來(lái)介紹一下如何通過(guò) set ()方法進(jìn)行遍歷字符串:

  • 1、使用構(gòu)造函數(shù)

    首先我們使用構(gòu)造函數(shù)來(lái)遍歷字符串: 在這里我們調(diào)用構(gòu)造函數(shù) set ()方法,調(diào)用此方法會(huì)自動(dòng)創(chuàng)建一個(gè)空列表。然后我們把這個(gè)空列表的內(nèi)容拷貝到字符串的末尾,并賦值給 str。這樣就遍歷完成了。set ()方法在使用的時(shí)候會(huì)進(jìn)行一下檢查,看是否為空,如果不是空的話,就會(huì)返回 true,否則會(huì)返回 false。 通過(guò)上面的代碼我們可以看到: 第一行和第二行使用了構(gòu)造函數(shù)遍歷字符串,但是并沒(méi)有創(chuàng)建空列表;第三行和第四行使用了自動(dòng)構(gòu)造函數(shù)遍歷字符串,但是并沒(méi)有創(chuàng)建空列表;第五行和第六行使用了構(gòu)造函數(shù)和自動(dòng)構(gòu)造函數(shù)都創(chuàng)建了一個(gè)空列表,第六行使用了構(gòu)造函數(shù)和自動(dòng)構(gòu)造函數(shù)都創(chuàng)建了一個(gè)空列表,第七行和第八行使用了自動(dòng)構(gòu)造函數(shù)創(chuàng)建了兩個(gè)空列表。最后一列使用了自動(dòng)構(gòu)造函數(shù)創(chuàng)建了一個(gè)空數(shù)組。 這里我們可以看到:第一行和第二行使用的是自動(dòng)構(gòu)造函數(shù)遍歷字符串;第三行和第四行使用的是構(gòu)造函數(shù)遍歷字符串;第七格和第八格使用的是自動(dòng)構(gòu)造函數(shù)遍歷字符串。 那么接下來(lái)我們來(lái)了解一下為什么會(huì)出現(xiàn)上面的問(wèn)題?原來(lái)是因?yàn)樵?java中使用構(gòu)造函數(shù)遍歷字符串,可以一次性遍歷多個(gè)字符串。而采用自動(dòng)構(gòu)造函數(shù)每次遍歷的時(shí)候只能遍歷空數(shù)組,所以就會(huì)出現(xiàn)上述的問(wèn)題。 而自動(dòng)構(gòu)造函數(shù)的返回類型是 null,也就是說(shuō)如果我們返回的是 null類型的值,那么這個(gè)空列表就不會(huì)被創(chuàng)建。上面我們已經(jīng)介紹完了如何遍歷字符串: 通過(guò)上面的分析我們知道,如果采用自動(dòng)構(gòu)造函數(shù)遍歷字符串的話,每次遍歷空數(shù)組都會(huì)創(chuàng)建一個(gè)空列表。這樣在遍歷完之后還需要再創(chuàng)建一個(gè)空列表,這樣就造成了內(nèi)存的浪費(fèi)。所以我們想要提高遍歷效率的話,盡量采用構(gòu)造函數(shù)進(jìn)行遍歷操作。

  • 2、使用自動(dòng)構(gòu)造函數(shù)

    自動(dòng)構(gòu)造函數(shù)是一種特殊的方法,它是自動(dòng)把一個(gè)對(duì)象轉(zhuǎn)換成一個(gè)新的對(duì)象,當(dāng)你在一個(gè)對(duì)象中聲明一個(gè)自動(dòng)構(gòu)造函數(shù)時(shí),自動(dòng)構(gòu)造函數(shù)會(huì)創(chuàng)建這個(gè)對(duì)象的子對(duì)象。自動(dòng)構(gòu)造函數(shù)使用相同的方法進(jìn)行遍歷操作,下面就來(lái)介紹一下如何使用自動(dòng)構(gòu)造函數(shù)遍歷字符串: 我們來(lái)看一下下面這個(gè)示例代碼: 上面這個(gè)代碼實(shí)現(xiàn)了遍歷字符串: 上面這個(gè)代碼也是遍歷字符串,但是它使用的是自動(dòng)構(gòu)造函數(shù),它把字符串轉(zhuǎn)換成了一個(gè)新的對(duì)象。注意:上面這個(gè)代碼也是不可以調(diào)用 set ()方法進(jìn)行遍歷操作的。 下面再來(lái)看一下如何使用自動(dòng)構(gòu)造函數(shù)進(jìn)行遍歷字符串: 上面這個(gè)代碼使用了自動(dòng)構(gòu)造函數(shù),它創(chuàng)建了一個(gè)新的對(duì)象,并且對(duì)對(duì)象進(jìn)行了初始化,可以使用 start ()方法來(lái)啟動(dòng)對(duì)象。但是由于 start ()方法是靜態(tài)方法,所以在執(zhí)行的時(shí)候會(huì)把程序運(yùn)行到 start ()方法上,這樣就會(huì)影響程序的執(zhí)行速度。

  • 3、使用 findall ()方法

    findall ()方法可以用來(lái)遍歷一個(gè)字符串,在遍歷過(guò)程中,該方法會(huì)不斷的遍歷字符串的末尾。如果要在多個(gè)字符串中進(jìn)行遍歷,該方法會(huì)返回多個(gè)字符串。這里需要注意一下, findall ()方法不會(huì)遍歷最后一個(gè)字符串,因?yàn)樵摲椒ú粫?huì)遍歷最后一個(gè)字符串的末尾,也不會(huì)遍歷第一個(gè)字符串的末尾。 在使用 findall ()方法進(jìn)行遍歷時(shí),需要注意以下兩點(diǎn): ①、當(dāng)遍歷結(jié)束后,可以對(duì) findall ()方法返回的第一個(gè)字符串進(jìn)行刪除操作。但是由于 findall ()方法返回的第一個(gè)字符串不是最后一個(gè)字符串的末尾,所以如果想要?jiǎng)h除最后一個(gè)字符串的末尾,需要重新定義一個(gè)新的 findall ()方法。 在上面我們了解了 set ()方法和 findall ()方法進(jìn)行遍歷操作時(shí)所使用的不同操作。在 java中還可以使用其他一些遍歷的方法: *遍歷鏈表中各個(gè)元素 上面我們已經(jīng)介紹了三種遍歷數(shù)據(jù)結(jié)構(gòu): set ()、 findall ()和構(gòu)造函數(shù)。下面我們介紹一下自動(dòng)構(gòu)造函數(shù)。

  • 4、使用自動(dòng)構(gòu)造函數(shù)和 findall ()方法的優(yōu)缺點(diǎn)對(duì)比

    自動(dòng)構(gòu)造函數(shù):優(yōu)點(diǎn)是,我們只需要定義一次自動(dòng)構(gòu)造函數(shù),就可以創(chuàng)建任意多個(gè)對(duì)象。缺點(diǎn)是,自動(dòng)構(gòu)造函數(shù)的效率比較低,并且我們需要?jiǎng)?chuàng)建對(duì)象的時(shí)候,就需要調(diào)用自動(dòng)構(gòu)造函數(shù),不方便。 findall ()方法:優(yōu)點(diǎn)是,當(dāng)我們給對(duì)象賦值時(shí),默認(rèn)值是一個(gè)整數(shù)。缺點(diǎn)是, findall ()方法的效率比較低,如果要返回的對(duì)象不為零則會(huì)導(dǎo)致程序崩潰。 自動(dòng)構(gòu)造函數(shù)和 findall ()方法各有優(yōu)缺點(diǎn)。我們應(yīng)該根據(jù)實(shí)際情況來(lái)選擇使用哪種方法來(lái)進(jìn)行遍歷操作。 set ()方法可以遍歷字符串; set ()方法需要在構(gòu)造函數(shù)中定義對(duì)象才可以進(jìn)行遍歷操作;

  • 常用的java遍歷字符串代碼 :

  • 1.?使用for循環(huán)遍歷字符串:
    ```
    String?str?=?"hello?world";
    for?(int?i?=?0;?i?<?str.length();?i++)?{
    char?c?=?str.charAt(i);
    System.out.println(c);
    }
    ```
    2.?使用增強(qiáng)for循環(huán)遍歷字符串:
    ```
    String?str?=?"hello?world";
    for?(char?c?:?str.toCharArray())?{
    System.out.println(c);
    }
    ```
    3.?使用while循環(huán)遍歷字符串:
    ```
    String?str?=?"hello?world";
    int?i?=?0;
    while?(i?<?str.length())?{
    char?c?=?str.charAt(i);
    System.out.println(c);
    i++;
    }
    ```
    4.?使用Iterator遍歷字符串:
    ```
    String?str?=?"hello?world";
    Iterator<Character>?iterator?=?str.chars().mapToObj(c?->?(char)?c).iterator();
    while?(iterator.hasNext())?{
    char?c?=?iterator.next();
    System.out.println(c);
    }
    ```文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-736682.html

到了這里,關(guān)于java遍歷字符串的方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【JavaSE專欄89】Java字符串和XML數(shù)據(jù)結(jié)構(gòu)的轉(zhuǎn)換,高效靈活轉(zhuǎn)變數(shù)據(jù)

    【JavaSE專欄89】Java字符串和XML數(shù)據(jù)結(jié)構(gòu)的轉(zhuǎn)換,高效靈活轉(zhuǎn)變數(shù)據(jù)

    作者主頁(yè) :Designer 小鄭 作者簡(jiǎn)介 :3年JAVA全棧開(kāi)發(fā)經(jīng)驗(yàn),專注JAVA技術(shù)、系統(tǒng)定制、遠(yuǎn)程指導(dǎo),致力于企業(yè)數(shù)字化轉(zhuǎn)型,CSDN學(xué)院、藍(lán)橋云課認(rèn)證講師。 主打方向 :Vue、SpringBoot、微信小程序 本文講解了 XML 的概念,以及 Java 中 XML 和字符串的轉(zhuǎn)換方法,并給出了樣例代碼。

    2024年02月09日
    瀏覽(32)
  • Java截取字符串方法

    主要有以下幾種方法: ? ??1、通過(guò)subString()方法來(lái)進(jìn)行字符串截?。ㄗ畛S茫?? ? 2、通過(guò)StringUtils(apache的)提供的方法或者StrUtil(hutool的) ? ? 3、split()+正則表達(dá)式來(lái)進(jìn)行截取 1、通過(guò)subString()方法來(lái)進(jìn)行字符串截取,返回字符串中的子字符串,在java中有兩種用法 ? ?

    2024年02月16日
    瀏覽(26)
  • Java Base64字符串與String字符串互轉(zhuǎn)方法

    Java Base64字符串與String字符串互轉(zhuǎn)方法

    在使用String轉(zhuǎn)Base64和Base64轉(zhuǎn)String上有點(diǎn)小問(wèn)題,特此記錄。 結(jié)果: 也是跟上面差不多的思路,將Base64轉(zhuǎn)為byte數(shù)組,再轉(zhuǎn)為String

    2024年02月15日
    瀏覽(32)
  • 字符串的遍歷方式

    ?常見(jiàn)的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型,如字符串,樹,哈希表,棧,隊(duì)列等,我們經(jīng)常在做題的時(shí)候會(huì)遇到遍歷他們的情況,所以掌握好這些方法才能在遇到題目的時(shí)候打開(kāi)思路解決問(wèn)題,掌握好招式才能正式的解決問(wèn)題,才能有獨(dú)立完成問(wèn)題的可能性。 ?那么我們這篇文章先學(xué)習(xí)

    2023年04月09日
    瀏覽(21)
  • Java中截取字符串方法

    1、通過(guò)subString()方法來(lái)進(jìn)行字符串截取,返回字符串中的子字符串,在java中有兩種用法 2.通過(guò)StringUtils提供的方法進(jìn)行截取 以上就是常用的java截取字符串方法。

    2024年02月17日
    瀏覽(32)
  • java 分割字符串(多種方法)

    [toc] 1、String#split 可以根據(jù)給定的分隔符或正則表達(dá)式將一個(gè)字符串分割成多個(gè)部分 2、String#substring 一般情況我們都是用于截取字符串使用的,這里我們也是可以用來(lái)處理字符串的分割,只要循環(huán)就行 3、Pattern類 Pattern 類通常來(lái)說(shuō),我們是用于處理正則表達(dá)式,做一些match使

    2024年02月12日
    瀏覽(18)
  • Java字符串替換的方法

    Java字符串替換的方法

    java中字符串替換方法主要有三種,分別是replace()、replaceAll()和replaceFirst(),這三種方法可以在三種不同情況應(yīng)用,下面就由我來(lái)具體說(shuō)明這三種方法的應(yīng)用情況吧。 replace的參數(shù)是char和CharSequence,即可以支持字符的替換,也支持字符串的替換(CharSequence即字符串序列的意思,說(shuō)

    2024年02月13日
    瀏覽(51)
  • java判斷某個(gè)字符串是否在字符串?dāng)?shù)組中的方法(4種)

    java判斷某個(gè)字符串是否在字符串?dāng)?shù)組中的方法(4種)

    public class Demo { ??? public static boolean useLoop(String[] arr, String targetValue) { ??????? for (String s : arr) { ??????????? if (s.equals(targetValue)) return true; ??????? } ??????? return false; ??? } ? ??? public static void main(String[] args) { ??????? String arr[] = {\\\"aa\\\", \\\"bb\\\", \\\"cc\\\"}; ??????

    2024年02月11日
    瀏覽(202)
  • java生成隨機(jī)字符串的方法

    java生成隨機(jī)字符串的方法

    ? 今天我們來(lái)學(xué)習(xí)下隨機(jī)數(shù)的生成,隨機(jī)數(shù)就是不確定的數(shù),它可以是任意一個(gè)整數(shù)或者字符串。下面就讓我們一起來(lái)學(xué)習(xí)下隨機(jī)字符串的生成吧。 首先,我們需要先定義一個(gè)名為 str的數(shù)組,并將它作為輸入文件。 1、使用 Java中的 str作為輸入文件。 2、然后將這個(gè)字符串復(fù)

    2024年02月16日
    瀏覽(26)
  • Java字符串查找(3種方法)

    Java字符串查找(3種方法)

    在給定的字符串中查找字符或字符串是比較常見(jiàn)的操作。字符串查找分為兩種形式:一種是在字符串中獲取匹配字符(串)的索引值,另一種是在字符串中獲取指定索引位置的字符。 String 類的 indexOf() 方法和 lastlndexOf() 方法用于在字符串中獲取匹配字符(串)的索引值。 1

    2024年02月02日
    瀏覽(15)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包