最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java在原字符中插入新字符或字符串實例

 更新時間:2020年08月25日 08:45:34   作者:以自由之名  
這篇文章主要介紹了java在原字符中插入新字符或字符串實例,具有很好的價值,希望對大家有所幫助。一起跟隨小編過來看看吧

插入字符代碼:

public class Test {
  
 /**在原字符中插入新字符**/
  public static void main(String[] args){
  
  StringBuffer sb = new StringBuffer("田田是一個女生!");//建立一個字符緩存區(qū),緩存區(qū)中的內(nèi)容為"田田是一個女生!"
  System.out.println("原字符緩存區(qū)中的內(nèi)容為:"+sb);//輸出原字符緩存區(qū)中的內(nèi)容
  System.out.println("原字符緩存區(qū)中的長度為:"+sb.length() );//長度
  System.out.println("原字符緩存區(qū)中的容量為:"+sb.capacity() );//容量
  
  sb.insert(5, '小');//給指定下標(biāo)位置前的值賦新值
  
  System.out.println("新字符緩存區(qū)中的內(nèi)容為:"+sb);//輸出新字符緩存區(qū)中的內(nèi)容
  System.out.println("新字符緩存區(qū)中的長度為:"+sb.length() );//長度
  System.out.println("新字符緩存區(qū)中的容量為:"+sb.capacity() );//容量  
  }  
}

解釋:sb.insert(5, ‘小');//給指定下標(biāo)位置前的值賦新值,意思為在sb的第6個字符前插入‘小'字,5為字符緩存區(qū)下標(biāo)的位置,和數(shù)組相同都是從0開始。

運(yùn)行結(jié)果:

原字符緩存區(qū)中的內(nèi)容為:田田是一個女生!

原字符緩存區(qū)中的長度為:8

原字符緩存區(qū)中的容量為:24

新字符緩存區(qū)中的內(nèi)容為:田田是一個小女生!

新字符緩存區(qū)中的長度為:9

新字符緩存區(qū)中的容量為:24

/**********************************/ /**********************************/

插入字符串代碼:

public class Test {
  
 /**在原字符中插入新字符**/
  public static void main(String[] args){
  
  StringBuffer sb = new StringBuffer("田田是一個女生!");//建立一個字符緩存區(qū),緩存區(qū)中的內(nèi)容為"田田是一個女生!"
  System.out.println("原字符緩存區(qū)中的內(nèi)容為:"+sb);//輸出原字符緩存區(qū)中的內(nèi)容
  System.out.println("原字符緩存區(qū)中的長度為:"+sb.length() );//長度
  System.out.println("原字符緩存區(qū)中的容量為:"+sb.capacity() );//容量
  
  sb.insert(5, "剛滿18歲的");//給指定下標(biāo)位置前的值賦一個字符串
  
  System.out.println("新字符緩存區(qū)中的內(nèi)容為:"+sb);//輸出新字符緩存區(qū)中的內(nèi)容
  System.out.println("新字符緩存區(qū)中的長度為:"+sb.length() );//長度
  System.out.println("新字符緩存區(qū)中的容量為:"+sb.capacity() );//容量  
 
  }  
}

運(yùn)行結(jié)果:

原字符緩存區(qū)中的內(nèi)容為:田田是一個女生!

原字符緩存區(qū)中的長度為:8

原字符緩存區(qū)中的容量為:24

新字符緩存區(qū)中的內(nèi)容為:田田是一個剛滿18歲的女生!

新字符緩存區(qū)中的長度為:14

新字符緩存區(qū)中的容量為:24

總結(jié):

sb.insert(5, '小')是給在字符串sb的第6個字符前插入‘小'字;

sb.insert(5, "剛滿18歲的");是給在字符串sb的第6個字符前插入字符串"剛滿18歲的";

注意:字符用‘',字符串用""

補(bǔ)充知識:java格式化字符串,在指定位置插入指定字符串,兼容中英文以及特殊字符,例如:換行,用于解決生成pdf換行問題等問題

原因: 由于html轉(zhuǎn)pdf時,不能自動換行,因此才有下面的代碼.

注釋:完全模擬html頁面的自動換行!

最后的頁面展示效果:每一行的長度都一樣,看上去像<td></td>的自動換行一樣

package test;

import java.io.UnsupportedEncodingException;

/**
 * 解決pdf換行問題,在指定位置插入指定字符串,兼容中英文以及特殊字符
 * 
 * @author xg君
 * 
 */
public class app {

 public static void main(String[] args) throws UnsupportedEncodingException {
  System.out.println(addStr(10, "<br/>", "as阿薩德dsa阿斯蒂芬fladadasdsjf阿斯蒂芬ljdsljkjlfdsklfd啥地方都是skljdsasfasdfads"));
 }

 /**
  * 插入方法
  * 
  * @param num
  *   每隔幾個字符插入一個字符串(中文字符)
  * @param splitStr
  *   待指定字符串
  * @param str
  *   原字符串
  * @return 插入指定字符串之后的字符串
  * @throws UnsupportedEncodingException
  */
 public static String addStr(int num, String splitStr, String str) throws UnsupportedEncodingException {
  StringBuffer sb = new StringBuffer();
  String temp = str;

  int len = str.length();
  while (len > 0) {
   int idx = getEndIndex(temp, num);
   sb.append(temp.substring(0, idx + 1)).append(splitStr);
   temp = temp.substring(idx + 1);
   len = temp.length();
  }

  return sb.toString();
 }

 /**
  * 兩個數(shù)字/英文
  * 
  * @param str
  *   字符串
  * @param num
  *   每隔幾個字符插入一個字符串
  * @return int 最終索引
  * @throws UnsupportedEncodingException
  */
 public static int getEndIndex(String str, double num) throws UnsupportedEncodingException {
  int idx = 0;
  double val = 0.00;
  // 判斷是否是英文/中文
  for (int i = 0; i < str.length(); i++) {
   if (String.valueOf(str.charAt(i)).getBytes("UTF-8").length >= 3) {
    // 中文字符或符號
    val += 1.00;
   } else {
    // 英文字符或符號
    val += 0.50;
   }
   if (val >= num) {
    idx = i;
    if (val - num == 0.5) {
     idx = i - 1;
    }
    break;
   }
  }
  if (idx == 0) {
   idx = str.length() - 1;
  }
  return idx;
 }
}

效果:

以上這篇java在原字符中插入新字符或字符串實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中大數(shù)據(jù)推薦算法使用場景分析

    Java中大數(shù)據(jù)推薦算法使用場景分析

    在Java中實現(xiàn)大數(shù)據(jù)推薦算法時,通常會使用一些開源的機(jī)器學(xué)習(xí)庫,如Apache Mahout、Weka、DL4J(DeepLearning4j,用于深度學(xué)習(xí))或者Spark MLlib(用于在Spark集群上運(yùn)行),這篇文章主要介紹了Java中可以用的大數(shù)據(jù)推薦算法,需要的朋友可以參考下
    2024-06-06
  • 關(guān)于同一個service調(diào)用service本身的方法

    關(guān)于同一個service調(diào)用service本身的方法

    這篇文章主要介紹了關(guān)于同一個service調(diào)用service本身的方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • MyBatis與Hibernate等ORM框架的區(qū)別及說明

    MyBatis與Hibernate等ORM框架的區(qū)別及說明

    MyBatis和Hibernate是Java中流行的ORM框架,各有特點(diǎn):MyBatis采用半自動SQL映射,提供細(xì)粒度的SQL控制,適合復(fù)雜查詢和性能優(yōu)化;Hibernate采用全自動對象關(guān)系映射,提供較高的開發(fā)效率,適合簡單的CRUD操作,選擇哪種框架應(yīng)根據(jù)項目需求、團(tuán)隊技術(shù)棧和個人偏好來決定
    2025-03-03
  • Spring?Cloud?Eureka(全面解析)?大白話

    Spring?Cloud?Eureka(全面解析)?大白話

    這篇文章主要介紹了Spring?Cloud?Eureka(全面解析)?大白話,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 使用Java實現(xiàn)qq郵箱發(fā)送郵件

    使用Java實現(xiàn)qq郵箱發(fā)送郵件

    這篇文章主要為大家詳細(xì)介紹了使用Java實現(xiàn)qq郵箱發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2010-05-05
  • Springboot Thymeleaf數(shù)字對象使用方法

    Springboot Thymeleaf數(shù)字對象使用方法

    這篇文章主要介紹了Springboot Thymeleaf數(shù)字對象使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2007-09-09
  • SpringBoot下使用定時任務(wù)的方式全揭秘(6種)

    SpringBoot下使用定時任務(wù)的方式全揭秘(6種)

    這篇文章主要介紹了SpringBoot下使用定時任務(wù)的方式全揭秘(6種),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • MyBatisPlus中事務(wù)處理的實現(xiàn)

    MyBatisPlus中事務(wù)處理的實現(xiàn)

    本文主要介紹了MyBatisPlus中事務(wù)處理的實現(xiàn),包括事務(wù)的開啟、提交、回滾等操作,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • 深入淺出分析Java 類和對象

    深入淺出分析Java 類和對象

    面向?qū)ο竽耸荍ava語言的核心,是程序設(shè)計的思想。Java語言的面向?qū)ο蠹夹g(shù)包括了面向?qū)ο蠛兔嫦蜻^程的基本概念,面向?qū)ο蟮奶卣鳎琂ava語言的類,對象,修飾符,抽象類等一系列的知識點(diǎn)
    2022-03-03
  • 詳解Springboot如何通過注解實現(xiàn)接口防刷

    詳解Springboot如何通過注解實現(xiàn)接口防刷

    本文主要為大家介紹一種極簡潔、靈活通用接口防刷實現(xiàn)方式、通過在需要防刷的方法加上@Prevent?注解即可實現(xiàn)短信防刷,感興趣的可以了解一下
    2022-09-09

最新評論

海口市| 茂名市| 丰台区| 仁化县| 长阳| 上栗县| 新乡县| 太和县| 闽侯县| 丰县| 金平| 太保市| 玉屏| 南和县| 公主岭市| 赤峰市| 民勤县| 荃湾区| 怀来县| 黄陵县| 兴业县| 沂水县| 弋阳县| 临沂市| 酉阳| 瓮安县| 株洲县| 翼城县| 日喀则市| 柘荣县| 中西区| 石嘴山市| 涪陵区| 广丰县| 杂多县| 博白县| 陵川县| 沐川县| 长岭县| 大方县| 密云县|