บทความนี้แชร์ตัวอย่างของการใช้งาน Java การแสดงผลเทมเพลตแบบง่ายสำหรับการอ้างอิงของคุณ เนื้อหาเฉพาะมีดังนี้
รหัส
แพ็คเกจ com.hdwang; นำเข้า java.util.hashmap; นำเข้า java.util.map;/*** สร้างโดย hdwang เมื่อ 2017/12/19 */คลาสสาธารณะ MyTemplate {โมฆะสาธารณะคงที่หลัก (สตริง [] args) {สตริงเทมเพลต = "$ {name}, $ {sex}, $ {birthyear} เกิดใน $ {graduateyear} และจบการศึกษาจาก $ {University} ใน $ {แผนที่}."; "; แผนที่ <string, string> params = new hashmap <> (); params.put ("ชื่อ", "จางซาน"); params.put ("เพศ", "ชาย"); params.put ("เกิด", "1990"); params.put ("GraduateYear", "2012"); params.put ("มหาวิทยาลัย", "มหาวิทยาลัย Tsinghua"); Long Start = System.currentTimeMillis (); สำหรับ (int i = 0; i <10000; i ++) {string result = render (เทมเพลต, params); if (i == 9999) {system.out.println (ผลลัพธ์); }} Long End = System.currentTimeMillis (); System.out.println ("เวลาค่าใช้จ่าย:"+(end-start)+"ms"); start = system.currentTimeMillis (); สำหรับ (int i = 0; i <10000; i ++) {string result = render2 (เทมเพลต, params); if (i == 9999) {system.out.println (ผลลัพธ์); }} end = system.currentTimeMillis (); System.out.println ("เวลาค่าใช้จ่าย:"+(end-start)+"ms"); } การเรนเดอร์สตริงคงที่สาธารณะ (เทมเพลตสตริง, แผนที่ <สตริง, สตริง> พารามิเตอร์) {// ใช้การประกบตัวสร้างเพื่อปรับปรุงประสิทธิภาพมากกว่าการเพิ่มสตริงสตริง builder = stringbuilder ใหม่ (); // กำหนดบูลีนตัวแปรควบคุม $ start = false; บูลีน parambegin = false; // boolean paramend = false; key StringBuilder = null; // วนรอบการจับคู่สำหรับ (int i = 0; i <template.length (); i ++) {char c = template.charat (i); // เริ่มการระบุถ้า (c == '$') {$ เริ่มต้น = true; } if ($ เริ่ม && c == '{') {parambegin = true; builder.deletecharat (builder.length ()-1); // ลบคีย์อักขระ $ เพิ่ม = new StringBuilder (); ดำเนินการต่อ; } // คีย์พารามิเตอร์ถ้า (parambegin && c! = '}') {ถ้า (c == '{') {system.out.println ("ข้อผิดพลาดรูปแบบเทมเพลต! ตำแหน่ง:"+i); } else {key.append (c); } ดำเนินการต่อ; } // end tag ถ้า (parambegin && c == '}') {// paramend = true; // ค่าที่สอดคล้องกับตัวสร้างคีย์พารามิเตอร์ Append (params.get (key.toString ())); // รีเซ็ตตัวแปรควบคุม $ artial = false; parambegin = false; // paramend = false; ดำเนินการต่อ; } // builder default.append (c); // เพิ่มอักขระ} return builder.toString (); } สตริงคงที่สาธารณะ render2 (เทมเพลตสตริง, แผนที่ <สตริง, สตริง> พารามิเตอร์) {สำหรับ (map.entry <สตริง, สตริง> รายการ: params.entryset ()) {string key = entry.getKey (); ค่าสตริง = entry.getValue (); template = template.replace ("$ {"+key+"}", ค่า); } ส่งคืนเทมเพลต; -การรันผลลัพธ์
จางซานชายเกิดในปี 2533 จบการศึกษาจากมหาวิทยาลัย Tsinghua ในปี 2555
เวลาใช้จ่าย: 65ms
จางซานชายเกิดในปี 2533 จบการศึกษาจากมหาวิทยาลัย Tsinghua ในปี 2555
ใช้เวลา: 161ms
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น