国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

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

瀏覽:32日期:2022-08-26 10:47:40

插入字符代碼:

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

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

運行結果:

原字符緩存區中的內容為:田田是一個女生!

原字符緩存區中的長度為:8

原字符緩存區中的容量為:24

新字符緩存區中的內容為:田田是一個小女生!

新字符緩存區中的長度為:9

新字符緩存區中的容量為:24

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

插入字符串代碼:

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

運行結果:

原字符緩存區中的內容為:田田是一個女生!

原字符緩存區中的長度為:8

原字符緩存區中的容量為:24

新字符緩存區中的內容為:田田是一個剛滿18歲的女生!

新字符緩存區中的長度為:14

新字符緩存區中的容量為:24

總結:

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

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

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

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

原因: 由于html轉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(); } /** * 兩個數字/英文 * * @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在原字符中插入新字符或字符串實例

以上這篇java在原字符中插入新字符或字符串實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 欧美一级毛片免费看视频 | 德国女人一级毛片免费 | 足恋玩丝袜脚视频免费网站 | 亚洲欧美成人综合在线 | 美女一级免费毛片 | 欧美亚洲综合网 | 97超频国产在线公开免费视频 | 国产三级a三级三级天天 | 91精品成人免费国产 | 一级毛片免费在线观看网站 | 久久99国产精品久久99果冻传媒 | 亚洲人成综合网站在线 | 视频一区在线观看 | av大片| 日韩中文字幕视频在线 | 日本一级在线播放线观看视频 | 亚洲国产成人最新精品资源 | 秋霞手机入口二日韩区 | 欧美亚洲影院 | 第一色网站 | 一本色道久久88亚洲精品综合 | 99精品免费视频 | 国产网站黄 | 久久精品国产一区二区三区不卡 | 国产95在线 | 亚洲 | 国产三级精品91三级在专区 | 国产伦精品一区二区三区四区 | aaa在线观看高清免费 | 91视频99| 久久免费视频网 | 国产精品亚洲精品不卡 | 亚洲日本在线观看视频 | 日日干夜夜爽 | 亚洲欧美日韩在线一区 | 欧美一区二区在线免费观看 | 久久亚洲国产午夜精品理论片 | 亚洲人成亚洲人成在线观看 | 日韩在线一区二区三区视频 | 香蕉成人国产精品免费看网站 | 成人在线网 | 男人的天堂中文字幕 |