การสร้างฟังก์ชันตรวจสอบ transaction ซ้ำ
บันทึก transaction ทางการเงินต้องได้รับการตรวจสอบเพื่อให้แน่ใจว่า ID ของแต่ละ transaction ไม่ซ้ำกัน งานของคุณคือนำเมธอดที่ตรวจสอบการมีอยู่ของ transaction ID ที่ซ้ำกันได้อย่างมีประสิทธิภาพมาใช้งาน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การปรับแต่งโค้ดใน Java
คำแนะนำการฝึกหัด
- กำหนดให้ตัวแปร
seenเป็นSetที่ว่างเปล่า - เพิ่ม transaction ลงใน
seenหากยังไม่เคยพบมาก่อน - คืนค่า boolean ที่เหมาะสมเมื่อลูปสิ้นสุดโดยไม่พบข้อมูลซ้ำ
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
public class Main {
public static void main(String[] args) {
TransactionProcessor processor = new TransactionProcessor();
String[] transactions = {
"TXN001", "TXN002", "TXN003", "TXN001",
"TXN004", "TXN005", "TXN003", "TXN006"
};
boolean hasDuplicates = processor.hasDuplicateTransactions(transactions);
if (hasDuplicates) {
System.out.println("Duplicate transactions detected!");
} else {
System.out.println("All transactions are unique.");
}
}
}
class TransactionProcessor {
public boolean hasDuplicateTransactions(String[] transactionIds) {
// Initialize an empty HashSet
____ seen = new ____<>();
for (String transactionId : transactionIds) {
if (seen.contains(transactionId)) {
return true;
} else {
// First time seeing this transaction, add it to the set
seen.____(____)
}
}
// Return true/false if no duplicates found
return ____;
}
}