<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Java字符串的十大問題,你遇到過幾個?

          共 1612字,需瀏覽 4分鐘

           ·

          2021-12-20 08:08

          Java字符串的十大問題,你遇到過幾個?

          以下是有關(guān)Java字符串的十大常見問題。

          1.如何比較字符串?使用"=="還是使用equals()?

          簡而言之,"=="測試引用是否相等,而equals()測試值是否相等。除非要檢查兩個字符串是否是同一對象,否則應(yīng)始終使用equals()。

          2.為什么對于安全敏感信息,char[]優(yōu)于String?

          字符串是不可變的,這意味著一旦創(chuàng)建它們,它們將保持不變,直到啟動垃圾收集器。使用數(shù)組,您可以顯式更改其元素。這樣,安全敏感信息(例如密碼)將不會出現(xiàn)在系統(tǒng)中的任何位置。

          3.我們可以在switch語句中使用字符串嗎?

          是,對于版本7。從JDK 7開始,我們可以使用字符串作為切換條件。在版本6之前,我們不能使用字符串作為切換條件。

          //?java?7?only!
          switch?(str.toLowerCase())?{
          ??????case?"a":
          ???????????value?=?1;
          ???????????break;
          ??????case?"b":
          ???????????value?=?2;
          ???????????break;
          }

          4.如何將字符串轉(zhuǎn)換為int?

          int?n?=?Integer.parseInt("10");

          簡單,但是經(jīng)常使用,有時被忽略。

          5.如何用空格字符分割字符串?

          String[]?strArray?=?aString.split("\\s+");

          6.什么是substring()方法真正起作用?

          在JDK 6中,substring()方法為chars數(shù)組提供了一個窗口,該chars數(shù)組表示現(xiàn)有的String,但不創(chuàng)建新的。要創(chuàng)建由新的char數(shù)組表示的新字符串,您可以添加一個空字符串,如下所示:

          str.substring(m,?n)?+?""

          這將創(chuàng)建一個代表新字符串的新char數(shù)組。上面的方法有時可以使您的代碼更快,因為垃圾收集器可以收集未使用的大字符串并僅保留子字符串。

          在Oracle JDK 7中,substring()創(chuàng)建一個新的char數(shù)組,而不使用現(xiàn)有的char數(shù)組。

          7. String vs StringBuilder vs StringBuffer

          String vs StringBuilder: StringBuilder是可變的,這意味著您可以在創(chuàng)建后對其進行修改。StringBuilder與StringBuffer: StringBuffer是同步的,這意味著它是線程安全的,但比StringBuilder慢。

          8.如何重復(fù)一個字符串?

          在Java中,我們可以使用Apache Commons Lang包中StringUtils.repeat()方法。

          String?str?=?"abcd";
          String?repeated?=?StringUtils.repeat(str,3);
          //abcdabcdabcd

          9.如何將字符串轉(zhuǎn)換為日期?

          String?str?=?"Sep?17,?2013";
          Date?date?=?new?SimpleDateFormat("MMMM?d,?yy",?Locale.ENGLISH).parse(str);
          System.out.println(date);
          //Tue?Sep?17?00:00:00?EDT?2013

          10.如何計算字符串中字符出現(xiàn)的次數(shù)?

          使用來自Apache Commons langStringUtils。

          int?n?=?StringUtils.countMatches("11112222",?"1");
          System.out.println(n);


          瀏覽 64
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  特色毛片 | 久久久7777 | 果冻传媒91cm-084换妻下部董小宛 | 日本一级红色片 | 毛片网站网址 |