實作重複交易偵測器
為了確保每筆交易 ID 都是唯一,必須驗證財務交易記錄。你的任務是實作一個方法,用有效率的方式檢查是否存在任何重複的交易 ID。
本練習屬於課程
Java 程式碼最佳化
練習說明
- 將
seen變數初始化為空的Set。 - 若先前未遇過該交易,則將其加入
seen。 - 如果迴圈結束仍未找到重複,請回傳對應的布林值。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
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 ____;
}
}