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

String.trim()消除不了空格的問題及解決

 更新時(shí)間:2023年07月17日 09:06:16   作者:周英雄  
這篇文章主要介紹了String.trim()消除不了空格的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

String.trim()消除不了空格

項(xiàng)目中在后臺(tái)處理空格的時(shí)候使用trim()方法沒起效果

解決方法

transUserName.replaceAll("\\u00A0","");

原因:

前臺(tái)傳過來的是用html轉(zhuǎn)義字符 生成的全角空格,而trim()方法只能消除半角的空格。

擴(kuò)展

查看源碼如下

  /**
   * @return A string whose value is this string, with any leading and trailing white
   *     space removed, or this string if it has no leading or
   *     trailing white space.
   */
  public String trim() {
    int len = value.length;
    int st = 0;
    char[] val = value;  /* avoid getfield opcode */
    while ((st < len) && (val[st] <= ' ')) {
      st++;
    }
    while ((st < len) && (val[len - 1] <= ' ')) {
      len--;
    }
    return ((st > 0) || (len < value.length)) ? substring(st, len) : this;
  }

原文的”white space“中文直譯為”留白“或”空白“,但是常見文檔一般翻譯為”空格“,而空格的英文一般應(yīng)譯為”blank”或”space”,所以這塊容易引起歧義。

心得:

trim()方法實(shí)際上trim掉了字符串兩端Unicode編碼小于等于32(\u0020)的所有字符,而全角空格\u00A0的Unicode編碼為12288。

String.trim()方法說明

API說明

trim

public String trim()返回字符串的副本,忽略前導(dǎo)空白和尾部空白。 

如果此 String 對(duì)象表示一個(gè)空字符序列,或者此 String 對(duì)象表示的字符序列的第一個(gè)和最后一個(gè)字符的代碼都大于 '\u0020'(空格字符),則返回對(duì)此 String 對(duì)象的引用。 

否則,若字符串中沒有代碼大于 '\u0020' 的字符,則創(chuàng)建并返回一個(gè)表示空字符串的新 String 對(duì)象。 

否則,假定 k 為字符串中代碼大于 '\u0020' 的第一個(gè)字符的索引,m 為字符串中代碼大于 '\u0020' 的最后一個(gè)字符的索引。創(chuàng)建一個(gè)新的 String 對(duì)象,它表示此字符串中從索引 k 處的字符開始,到索引 m 處的字符結(jié)束的子字符串,即 this.substring(k, m+1) 的結(jié)果。 

此方法可用于截去字符串開頭和末尾的空白(如上所述)。 

返回:

此字符串移除了前導(dǎo)和尾部空白的副本;如果沒有前導(dǎo)和尾部空白,則返回此字符串。

示例代碼

 
    /**  
     * @Title: TrimTest.java
     * @Package com.burns
     * @Description: TODO(用一句話描述該文件做什么)
     * @author 35725
     * @date 2019年11月29日 上午11:45:17 
     * @version V1.0  
     */
package com.burns;
    /**
     * @ClassName: TrimTest
     * @Description: TODO(這里用一句話描述這個(gè)類的作用)
     * @author 35725
     * @date 2019年11月29日
     *
     */
public class TrimTest {
	public static void main(String[] args) {
		String s= " 1 1 2  3   ";
		System.out.println("trim方法執(zhí)行之后>>>>"+s.trim()+"<<<<");
		System.out.println("源字符串:>>>>"+s+"<<<<<<");
	}
}

執(zhí)行結(jié)果

trim方法執(zhí)行之后>>>>1 1 2  3<<<<
源字符串:>>>> 1 1 2  3   <<<<<<

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring Cloud Feign性能優(yōu)化代碼實(shí)例

    Spring Cloud Feign性能優(yōu)化代碼實(shí)例

    這篇文章主要介紹了Spring Cloud Feign性能優(yōu)化代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Spring Boot中如何使用Convert接口實(shí)現(xiàn)類型轉(zhuǎn)換器

    Spring Boot中如何使用Convert接口實(shí)現(xiàn)類型轉(zhuǎn)換器

    這篇文章主要介紹了Spring Boot中使用Convert接口實(shí)現(xiàn)類型轉(zhuǎn)換器的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java8 Stream流逐行處理文本文件

    java8 Stream流逐行處理文本文件

    這篇文章主要介紹了java8 Stream流逐行處理文本文件的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Java中的AQS同步隊(duì)列問題詳解

    Java中的AQS同步隊(duì)列問題詳解

    AQS?提供一套基礎(chǔ)的機(jī)制來實(shí)現(xiàn)線程的同步、阻塞與喚醒、等待隊(duì)列等功能,也就是想要深入學(xué)習(xí)線程工具類,這個(gè)同步隊(duì)列就必須得掌握,這篇文章主要介紹了Java中的AQS同步隊(duì)列問題,需要的朋友可以參考下
    2022-06-06
  • 詳解Jenkins 實(shí)現(xiàn)Gitlab事件自動(dòng)觸發(fā)Jenkins構(gòu)建及釘釘消息推送

    詳解Jenkins 實(shí)現(xiàn)Gitlab事件自動(dòng)觸發(fā)Jenkins構(gòu)建及釘釘消息推送

    這篇文章主要介紹了Jenkins 實(shí)現(xiàn)Gitlab事件自動(dòng)觸發(fā)Jenkins構(gòu)建及釘釘消息推送,應(yīng)該會(huì)對(duì)大家學(xué)習(xí)Jenkins有所啟發(fā)
    2021-04-04
  • 2022?最新?IntelliJ?IDEA?詳細(xì)配置步驟演示(推薦)

    2022?最新?IntelliJ?IDEA?詳細(xì)配置步驟演示(推薦)

    作為一名開發(fā)人員,第一肯定是選擇一款趁手的開發(fā)利器,本人使用?Java?偏多,這里推薦使用?IntelliJ?IDEA,?俗稱神級(jí)開發(fā)工具,具體的安裝過程就不過多贅述了,有需要了解的朋友可以參考下本文
    2022-09-09
  • jdbc連接數(shù)據(jù)庫實(shí)例詳解

    jdbc連接數(shù)據(jù)庫實(shí)例詳解

    在本篇內(nèi)容里小編給大家分享了關(guān)于jdbc如何連接數(shù)據(jù)庫的相關(guān)知識(shí)點(diǎn)內(nèi)容,需要的朋友們學(xué)習(xí)下。
    2019-02-02
  • Spring容器注入bean的幾種方式詳解

    Spring容器注入bean的幾種方式詳解

    這篇文章主要介紹了Spring容器注入bean的幾種方式詳解,@Configuration用來聲明一個(gè)配置類,然后使用 @Bean 注解,用于聲明一個(gè)bean,將其加入到Spring容器中,這種方式是我們最常用的一種,需要的朋友可以參考下
    2024-01-01
  • java正則表達(dá)式學(xué)習(xí)筆記之命名捕獲

    java正則表達(dá)式學(xué)習(xí)筆記之命名捕獲

    這篇文章主要為大家詳細(xì)介紹了java正則表達(dá)式中的命名捕獲,感興趣的小伙伴們可以參考一下
    2016-02-02
  • 一文看懂RabbitMQ消息丟失如何防止

    一文看懂RabbitMQ消息丟失如何防止

    這篇文章主要介紹了RabbitMQ消息丟失的場(chǎng)景,以及如何保證信息不丟失,看完這篇文章一定可以幫助你RabbitMQ有更深的理解,需要的朋友可以參考下
    2023-03-03

最新評(píng)論