日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Java字符串格式化,{}占位符根據(jù)名字替換實(shí)例

瀏覽:130日期:2022-08-22 09:18:40

我就廢話不多說了,大家還是直接看代碼吧~

import java.beans.PropertyDescriptor;import java.lang.reflect.Method;import java.util.HashMap;import java.util.Map;import java.util.regex.Matcher;import java.util.regex.Pattern;public class StringFormatUtil { private static final Pattern pattern = Pattern.compile('{(.*?)}'); private static Matcher matcher; /** * 格式化字符串 字符串中使用{key}表示占位符 * * @param sourStr * 需要匹配的字符串 * @param param * 參數(shù)集 * @return */ public static String stringFormat(String sourStr, Map<String, Object> param) { String tagerStr = sourStr; if (param == null) return tagerStr; try { matcher = pattern.matcher(tagerStr); while (matcher.find()) {String key = matcher.group();String keyclone = key.substring(1, key.length() - 1).trim();Object value = param.get(keyclone);if (value != null) tagerStr = tagerStr.replace(key, value.toString()); } }catch (Exception e){ return null; } return tagerStr; } /** * 格式化字符串 字符串中使用{key}表示占位符 利用反射 自動(dòng)獲取對(duì)象屬性值 (必須有g(shù)et方法) * * @param sourStr 需要匹配的字符串 * * @return */ public static String stringFormat(String sourStr, Object obj) { String tagerStr = sourStr; matcher = pattern.matcher(tagerStr); if (obj == null) return tagerStr; PropertyDescriptor pd; Method getMethod; // 匹配{}中間的內(nèi)容 包括括號(hào) while (matcher.find()) { String key = matcher.group(); String keyclone = key.substring(1, key.length() - 1).trim(); try {pd = new PropertyDescriptor(keyclone, obj.getClass());getMethod = pd.getReadMethod();// 獲得get方法Object value = getMethod.invoke(obj);if (value != null) tagerStr = tagerStr.replace(key, value.toString()); } catch (Exception e) {// TODO Auto-generated catch block// Loggers.addException(e); } } return tagerStr; } /** * 格式化字符串 (替換所有) 字符串中使用{key}表示占位符 * * @param sourStr * 需要匹配的字符串 * @param param * 參數(shù)集 * @return */ public static String stringFormatAll(String sourStr, Map<String, Object> param) { String tagerStr = sourStr; if (param == null) return tagerStr; try { matcher = pattern.matcher(tagerStr); while (matcher.find()) {String key = matcher.group();String keyclone = key.substring(1, key.length() - 1).trim();Object value = param.get(keyclone);if (value != null) tagerStr = tagerStr.replace(key, value.toString()); } }catch (Exception e){ return null; } return tagerStr; } /** * 格式花字符串,按照占位符名字 * 輸入:sourStr = xxxxx{a}xxxx ,param = {a:A,b:B} * 輸出:targetStr = xxxxAxxxxB * @param sourStr * @param param * @return */ public static String stringFormat(String sourStr, JSONObject param) { String tagerStr = sourStr; if (param == null) return tagerStr; try { matcher = pattern.matcher(tagerStr); while (matcher.find()) {String key = matcher.group();String keyclone = key.substring(1, key.length() - 1).trim();Object value = param.get(keyclone);if (value != null) tagerStr = tagerStr.replace(key, value.toString()); } }catch (Exception e){ return null; } return tagerStr; } public static void main(String[] args) {// Map<String,Object> map = new HashMap<>();// map.put('id','111');// map.put('sss','ss');// JSONObject json = new JSONObject();// json.put('id','212');// json.put('fff','xxxx');// json.put('emmmmm',11);// stringFormat('sisas&{fff}_diwahwi%{id}{jio}',json); }}

補(bǔ)充知識(shí):java中占位符的使用

二話不說,先上代碼

package com.string.format;public class StringFormat { //占位符%s,拼接sql,刪除兩個(gè)表中的數(shù)據(jù),條件是字符串?dāng)?shù)組類型的id public static void formSql(String tableName,String tableName2,String...strings){ //sql占位符 %s占位符 String sql='delete from %s,%s where id in (%s)'; //聲明新的字符串 String sqls=''; //遍歷字符串的參數(shù)數(shù)組 for (String str : strings) { //將參數(shù)數(shù)組拼接成字符串,用逗號(hào)分割 sqls += str + ','; } //拼接最后會(huì)多出個(gè)逗號(hào),截取 sqls=sqls.substring(0, sqls.length()-1); //format第一個(gè)sql參數(shù)為目標(biāo)字符串,tableName,tableName2,為替換的兩表的名字,sqls為刪除數(shù)據(jù)的參數(shù)集合 String s=String.format(sql, tableName,tableName2,sqls); //輸出拼接后的sql System.out.println(s); } public static void main(String[] args) { //傳入?yún)?shù)為指定表名,和參數(shù)值 StringFormat.formSql('user','role', '1','3','5','7','9','33'); }}

其實(shí),傳入的參數(shù)是數(shù)組類型的 值,我們也可以按array[0],array[1]的方式插入?yún)?shù),只是參數(shù)個(gè)數(shù)應(yīng)用不靈活,還是使用數(shù)組的方式取值比較好,

Java字符串格式化,{}占位符根據(jù)名字替換實(shí)例

public static void format(){ String st='%s的%s的價(jià)格是%f,是否售罄%c,占總銷售的%d%%,庫存%d,是否為暢銷品%b'; String s=String.format(st, '58優(yōu)品','啤酒',3.5,’是’,50,199,true); System.out.println(s); } public static void main(String[] args) { //傳入?yún)?shù)為指定表名,和參數(shù)值 //StringFormat.formSql('user','role', '1','3','5','7','9','33'); format(); }

Java字符串格式化,{}占位符根據(jù)名字替換實(shí)例

public static void format(){ //String st='%s的%s的價(jià)格是%f,是否售罄%c,占總銷售的%d%%,庫存%d,是否為暢銷品%b'; //String s=String.format(st, '58優(yōu)品','啤酒',3.5,’是’,50,199,true); //System.out.println(s); SimpleDateFormat simple=new SimpleDateFormat('yyyy年MM月dd日 HH點(diǎn)mm分ss秒'); String newDate=simple.format(new Date()); String st1='%s的%s的價(jià)格是%s,是否售罄%s,占總銷售的%s%%,庫存%s,是否為暢銷品%s,當(dāng)前日期為%s'; String ss=String.format(st1, '58優(yōu)品','啤酒','3.5',’是’,'80','998','true',newDate);System.out.println(ss); } public static void main(String[] args) { //傳入?yún)?shù)為指定表名,和參數(shù)值 //StringFormat.formSql('user','role', '1','3','5','7','9','33'); format(); }

Java字符串格式化,{}占位符根據(jù)名字替換實(shí)例

/*%S字符串類型的占位符 * %c字符類型的占位符 * %b布爾類型的占位符 * %d整數(shù)類型的占位符 * %%百分比類型的占位符 * %n換行類型的占位符 * %t時(shí)間類型的占位符 * c全部的日期時(shí)間類型 * F年-月-日格式 * D年/月/日格式 * rHH:MM:SS格式12小時(shí)制 * */

以上這篇Java字符串格式化,{}占位符根據(jù)名字替換實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产成人免费视频网站视频社区| 国产精品男女| 国产高清不卡| 一区二区国产精品| 免费成人网www| 99久久精品费精品国产| 精精国产xxxx视频在线播放 | 高清av一区| 亚洲资源在线| 亚洲一区中文| 久久亚洲一区| 视频在线观看一区| 视频一区欧美精品| 午夜亚洲福利在线老司机| 亚洲大全视频| 老牛影视一区二区三区| 男女激情视频一区| 免费国产亚洲视频| 日韩专区视频网站| 日本91福利区| 国产精品欧美一区二区三区不卡| 国产精品久久国产愉拍| 国产日韩一区二区三区在线 | 国产亚洲高清视频| 性欧美长视频| 日韩国产一二三区| 精品国产亚洲一区二区三区| 亚洲www啪成人一区二区| 91精品观看| 亚洲精品高潮| 国产精品调教视频| 亚洲另类av| 日韩高清不卡一区二区| 日韩精品一区二区三区中文字幕| 日韩精彩视频在线观看| 麻豆精品视频在线观看| 日韩在线二区| 国产亚洲一区在线| 欧美精品国产| 亚洲1234区| 亚洲一区二区三区高清不卡| 日韩av一区二区三区| 老牛影视一区二区三区| 91高清一区| 日韩视频久久| 日韩视频久久| 在线一区欧美| 一区福利视频| 精品国产一区二| 日韩精品福利一区二区三区| 久久成人国产| 亚洲一区中文| 亚洲一区中文| 模特精品在线| 天堂成人国产精品一区| 亚洲一级少妇| 久久久国产精品网站| 蜜桃久久久久| 免费久久99精品国产| 91看片一区| 视频一区二区三区中文字幕| 国产精品久久久免费| 在线亚洲精品| 福利精品一区| 五月婷婷亚洲| 国产在线观看www| 91精品国产自产观看在线| 欧美日韩在线网站| 国产乱码精品一区二区三区四区| 神马日本精品| 久久精品色播| 国产精品日本一区二区三区在线| 99久久婷婷| 黄色aa久久| 欧美精品97| 青青草国产成人99久久| 蜜桃av一区二区在线观看| 米奇777超碰欧美日韩亚洲| 成人污污视频| 爽爽淫人综合网网站| 香蕉人人精品| 中文在线免费视频| 九九99久久精品在免费线bt| 欧美一区网站| 国产精品欧美一区二区三区不卡| 日本成人中文字幕| 久久99精品久久久久久园产越南| 免费一级欧美片在线观看网站| 国精品产品一区| 亚洲天堂av影院| 欧美成人基地| 免费人成网站在线观看欧美高清| 亚洲精品极品| 麻豆精品99| 久久香蕉精品香蕉| 国产美女高潮在线| 亚洲五月综合| 高清在线一区| 蜜臀精品一区二区三区在线观看| 国产一精品一av一免费爽爽| 欧美国产一级| 亚洲精品极品| 午夜久久中文| 日韩一区二区三区免费视频| 欧美男人天堂| 婷婷综合成人| 亚洲性色av| 日韩精品欧美大片| 欧美日韩色图| 日韩高清三区| 免费不卡中文字幕在线| 亚洲69av| 色综合www| 久久影院午夜精品| 日韩av一区二区三区| 亚洲欧美综合| 97国产精品| 久久wwww| 日韩欧美中文字幕一区二区三区| 中文字幕在线看片| 日韩欧美三区| 国产精品www.| 日本大胆欧美人术艺术动态| 久久av超碰| 亚洲高清二区| 国产精品伊人| 一区二区国产在线| 欧美91视频| 成人在线视频中文字幕| 日韩极品在线观看| 亚洲主播在线| 极品日韩av| 在线亚洲人成| 国产精品激情| 亚洲欧洲日韩精品在线| 亚洲精品一区二区妖精| 视频在线不卡免费观看| 国产精品亚洲欧美日韩一区在线 | 日本不卡在线视频| 99视频在线精品国自产拍免费观看| 四虎国产精品免费观看| 欧美日韩一视频区二区| 亚洲精品少妇| 日韩精品一区第一页| 亚洲精品电影| 亚洲一级二级| 亚洲www啪成人一区二区| 福利一区和二区| 国产在线不卡一区二区三区| 国产精品三级| 国产精品va| 国产欧美啪啪| 国产精品欧美大片| 最新亚洲国产| 久久午夜视频| 亚洲综合中文| 69堂精品视频在线播放| 日韩福利视频网| 国产亚洲精品美女久久| 四虎在线精品| 新版的欧美在线视频| 日韩欧乱色一区二区三区在线| 日韩精品不卡一区二区| 日韩精品国产欧美| 日韩中文字幕不卡| 中文久久精品| 国产精品7m凸凹视频分类| 亚洲精品**中文毛片| 日韩av成人高清| 日本精品在线播放| 日韩视频在线一区二区三区| 亚洲精品国产嫩草在线观看 | 天堂√中文最新版在线| 日本一区二区三区中文字幕| 亚洲性图久久| 999久久久免费精品国产| 国产一区清纯| 亚洲天堂久久| 免费高清在线一区| 日韩高清中文字幕一区| 中文字幕亚洲在线观看| 亚洲精品大片| 99riav1国产精品视频| 日韩午夜一区| 日韩一区二区三区在线看| 亚洲精品精选| 国产精品久久久久久av公交车| 精品国产aⅴ| 日韩精品1区| 成人久久久久| 免费的成人av| 久久av影院| 五月天激情综合网| 国产精品一卡| 欧美1区免费| 国产欧美另类| 青青久久av| 性欧美69xoxoxoxo| 69堂精品视频在线播放| 91精品一区国产高清在线gif|