เพิ่งได้รับตำแหน่งของตัวละครตัวสุดท้ายที่เกิดขึ้น
for(String serverId : serverIds) {
sb.append(serverId);
sb.append(",");
}
sb.deleteCharAt(sb.lastIndexOf(","));
เนื่องจากlastIndexOf
จะทำการค้นหาแบบย้อนกลับและคุณรู้ว่าจะสามารถค้นหาได้ตั้งแต่ครั้งแรกประสิทธิภาพจะไม่มีปัญหาที่นี่
แก้ไข
เนื่องจากฉันได้รับการตอบสนองต่อไปเรื่อย ๆ (ขอบคุณผู้คน😊) มันมีค่ามากที่:
บนJava 8เป็นต้นไปมันก็จะชัดเจนมากขึ้นและชัดเจนที่จะใช้StringJoiner มันมีวิธีการหนึ่งสำหรับคั่นง่าย ๆ และเกินสำหรับคำนำหน้าและคำต่อท้าย
ตัวอย่างที่นำมาจากที่นี่: ตัวอย่าง
ตัวอย่างการใช้ตัวคั่นอย่างง่าย:
StringJoiner mystring = new StringJoiner("-");
// Joining multiple strings by using add() method
mystring.add("Logan");
mystring.add("Magneto");
mystring.add("Rogue");
mystring.add("Storm");
System.out.println(mystring);
เอาท์พุท:
โลแกน-แม๊ก-Rogue พายุ
ตัวอย่างที่มีคำต่อท้ายและคำนำหน้า:
StringJoiner mystring = new StringJoiner(",", "(", ")");
// Joining multiple strings by using add() method
mystring.add("Negan");
mystring.add("Rick");
mystring.add("Maggie");
mystring.add("Daryl");
System.out.println(mystring);
เอาท์พุต
(Negan ริกแม็กกี้, ดาริล)