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

Java中字符串占位替換、字符串拼接、字符串與Collection互轉(zhuǎn)的方式

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

場(chǎng)景

字符串占位替換

1、String.format

最原始最基礎(chǔ)的方式。

使用%來表示占位,后面跟上不同的標(biāo)識(shí)符,用于限定這個(gè)占位符的參數(shù)類型,由jdk原生提供支持。

示例:

??????? String badao = String.format("hello:%s", "badao");
??????? System.out.println(badao);

2、MessageFormat

如果遇到一個(gè)參數(shù)需要替換模板中多個(gè)占位的場(chǎng)景,更友好的方式是MessageFormat,由jdk原生提供支持。

示例:

??????? String message = MessageFormat.format("hello:{0},your name is {0},your class is {1}","badao","class1");
??????? System.out.println(message);

字符串拼接

舉例:將int數(shù)組轉(zhuǎn)為英文逗號(hào)分割的字符串為例

首先初始化一個(gè)int數(shù)組

??????? List<Integer> integerList = new ArrayList<Integer>(){{
??????????? add(1);
??????????? add(2);
??????????? add(3);
??????? }};

1、StringBuilder來拼接

??????? StringBuilder stringBuilder = new StringBuilder();
??????? for (Integer i:integerList) {
??????????? stringBuilder.append(i).append(",");
??????? }
??????? String substring = stringBuilder.substring(0, stringBuilder.length() - 1);
??????? System.out.println(substring);

2、StringJoiner 由jdk1.8提供

??????? String collect = integerList.stream().map(String::valueOf).collect(Collectors.joining(","));
??????? System.out.println(collect);

3、如果使用的jdk不是1.8版本,還可使用guava的joiner

??????? String join = Joiner.on(",").join(integerList);
??????? System.out.println(join);

注:

博客:
霸道流氓氣質(zhì)的博客_CSDN博客-C#,架構(gòu)之路,SpringBoot領(lǐng)域博主

字符串與Collection的互轉(zhuǎn)

字符串轉(zhuǎn)列表

1、字符串先轉(zhuǎn)數(shù)組,然后再數(shù)組轉(zhuǎn)列表

通過Arrays.asList

??????? String[] cells = "a,b,c".split(",");
??????? List<String> stringList = Arrays.asList(cells);
??????? System.out.println(stringList);

通過Collections.addAll

??????? List<String> list1 = new ArrayList<>();
??????? Collections.addAll(list1,"a,b,c,d".split(","));
??????? System.out.println(list1);

如果希望轉(zhuǎn)成int列表

??????? List<Integer> collect = Stream.of("1, ,2 ,3,4".split(","))
??????????????? .map(String::trim)
??????????????? .filter(s -> !s.isEmpty())
??????????????? .map(Integer::valueOf)
??????????????? .collect(Collectors.toList());
??????? System.out.println(collect);

2、通過guava的方式

通過guava的Splitter.on().splitToList

??????? List<String> stringList1 = Splitter.on(",").splitToList("a,b,c,d,e");
??????? System.out.println(stringList1);

直接轉(zhuǎn)換成流可以使用splitToStream

??????? List<Integer> collect1 = Splitter.on(",").splitToStream("1, ,2 ,3,4")
??????????????? .map(String::trim)
??????????????? .filter(s -> !s.isEmpty())
??????????????? .map(Integer::valueOf)
??????????????? .collect(Collectors.toList());
??????? System.out.println(collect1);

列表轉(zhuǎn)字符串

1、通過StringBuilder

??????? StringBuilder builder = new StringBuilder();
??????? for (String str:stringList1){
??????????? builder.append(str).append(",");
??????? }
??????? //最后一個(gè)拼接符號(hào)不要
??????? String substring = builder.substring(0, builder.length() - 1);
??????? System.out.println(substring);//a,b,c,d,e

2、通過String.join

缺點(diǎn)是列表必須是字符串列表,如果換成int列表則不行

??????? String join = String.join(",", stringList1);
??????? System.out.println(join);//a,b,c,d,e

3、guava提供的Joiner? 沒有列表類型的限制文章來源地址http://www.zghlxwxcb.cn/news/detail-592243.html

??????? String join1 = Joiner.on(",").join(stringList1);
??????? System.out.println(join1);

到了這里,關(guān)于Java中字符串占位替換、字符串拼接、字符串與Collection互轉(zhuǎn)的方式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(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)文章

  • Java Stream 拼接字符串

    一、使用背景? ? ? ? ?? ? ? ? ? 在開發(fā)過程,有時(shí)候需要將集合結(jié)果轉(zhuǎn)化成字符串,按照指定的字符分隔進(jìn)行拼接,java stream的收集器提供相應(yīng)的API,操作簡(jiǎn)單方便,下面直接上示例代碼; 二、API操作

    2024年04月12日
    瀏覽(23)
  • Java替換字符串最后指定字符

    需求感想省略...... 代碼如下: public static void main(String[] args) { 測(cè)試案例1: ?? ??? ?String str = \\\"|1|2|3||||||||||||||\\\"; ?//偶位數(shù) 測(cè)試案例2: ?? ??? ?String str = \\\"|1|2|3|||||||||||\\\"; ? //奇數(shù)位 --------------------------------------------------------------------------------------------------------------------

    2024年02月12日
    瀏覽(22)
  • java 字符串替換

    在Java 中,String 類提供了 3 種字符串替換方法,分別是 replace()、replaceFirst() 和 replaceAll() replace() 方法 replace()方法用于將目標(biāo)字符串中的指定字符(串)替換成新的字符(串)replace(String oldChar, String newChar) replaceFirst() 方法 replaceFirst()方法用于將目標(biāo)字符串中匹配某正則表達(dá)式的第一

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

    Java字符串替換的方法

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

    2024年02月13日
    瀏覽(51)
  • Java中的字符串替換

    在Java中,String 類提供了 3 種字符串替換方法,分別是 replace()、replaceFirst() 和 replaceAll(),下面我們就來詳細(xì)看一下三種的用法! ????下面這套 Java300集 視頻專門為零基礎(chǔ)而制,適合準(zhǔn)備入行Java開發(fā)的零基礎(chǔ),視頻中穿插多個(gè)實(shí)戰(zhàn)項(xiàng)目。每一個(gè)知識(shí)點(diǎn)都講解的通俗易懂,由

    2024年02月11日
    瀏覽(27)
  • Java中關(guān)于String類以及字符串拼接的問題

    Java中關(guān)于String類以及字符串拼接的問題

    String為什么不可變? 答案 String s1=new String(\\\"abc\\\");創(chuàng)建了幾個(gè)字符串對(duì)象 答案 str1它首先會(huì)去方法區(qū)的常量池中找,有“hello”這個(gè)對(duì)象就直接引用,沒有就創(chuàng)建一個(gè)新的對(duì)象“hello”,存放在常量池中。 而new的方式首先會(huì)在堆中創(chuàng)建一個(gè)對(duì)象,然后再去常量池中找,有直接引用

    2023年04月26日
    瀏覽(48)
  • 華為OD機(jī)試 - 字符串拼接(Java & JS & Python & C)

    題目描述 給定 M(0 M ≤?30)個(gè)字符(a-z),從中取出任意字符(每個(gè)字符只能用一次)拼接成長(zhǎng)度為 N(0 N ≤ 5)的字符串, 要求相同的字符不能相鄰,計(jì)算出給定的字符列表能拼接出多少種滿足條件的字符串, 輸入非法或者無法拼接出滿足條件的字符串則返回0。 輸入描

    2024年01月22日
    瀏覽(39)
  • [正式學(xué)習(xí)java③]——字符串在內(nèi)存中的存儲(chǔ)方式、為什么字符串不可變、字符串的拼接原理,鍵盤錄入的小細(xì)節(jié)。

    [正式學(xué)習(xí)java③]——字符串在內(nèi)存中的存儲(chǔ)方式、為什么字符串不可變、字符串的拼接原理,鍵盤錄入的小細(xì)節(jié)。

    ??鍵盤敲爛,年薪30萬?? 目錄 一、字符串 1.字符串在內(nèi)存中的存儲(chǔ)方式 2.創(chuàng)建字符串對(duì)象的兩種方式 3.兩種創(chuàng)建方式的區(qū)別 4.字符串對(duì)象一旦創(chuàng)建不可改變 - 為什么??? 5.字符串的拼接 6.字符串的拼接原理 二、鍵盤錄入 三、總結(jié) ??在java中,內(nèi)存中有兩個(gè)地方可以存儲(chǔ)

    2024年02月08日
    瀏覽(26)
  • Java中String字符串替換3種方法詳解

    replace() 方法用于將目標(biāo)字符串中的指定字符(串)替換成新的字符(串) 字符串.replace(String oldChar, String newChar) replaceFirst() 方法用于將目標(biāo)字符串中匹配某正則表達(dá)式的第一個(gè)子字符串替換成新的字符串 字符串.replaceFirst(String regex, String replacement) replaceAll() 方法用于將目標(biāo)字

    2024年02月11日
    瀏覽(22)
  • Java中常見字符串拼接九種方式,總有一款你喜歡!

    Java中常見字符串拼接九種方式,總有一款你喜歡!

    在 Java 編程中,字符串拼接是一項(xiàng)非?;A(chǔ)的操作,它涉及到了很多日常開發(fā)工作中常見的場(chǎng)景,例如拼接 SQL 語句、構(gòu)建 HTTP 請(qǐng)求參數(shù)等等。因此,對(duì)于掌握好字符串拼接技巧不僅有助于提高代碼效率,而且能夠避免一些潛在的性能問題。 下面我們就來列舉出來幾種方式,

    2024年02月16日
    瀏覽(35)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包