Giả sử bạn có hai trường hợp cùng loại bean và bạn muốn hiển thị tóm tắt về những gì đã thay đổi giữa hai trường hợp - ví dụ: bạn có bean đại diện cho cài đặt của người dùng trong ứng dụng của bạn và bạn ' d muốn có thể hiển thị danh sách những gì đã thay đổi trong cài đặt mới mà người dùng đang gửi (ví dụ # 1) so với những gì được lưu trữ cho người dùng (ví dụ # 2).Thuật toán phổ biến để tạo ra sự khác biệt của các trường trong hai bean?
Có một thuật toán hay mẫu thiết kế thường được sử dụng cho một tác vụ như thế này, có lẽ một cái gì đó có thể được tóm tắt và tái sử dụng cho các loại hạt khác nhau? (Tôi đang gặp khó khăn khi nghĩ đến tên tốt cho loại vấn đề này để biết Google đang làm gì). Tôi đã kiểm tra hạt đậu phộng và không có gì xuất hiện với tôi.
Có một số vấn đề với mã này. Đầu tiên, nó giả định rằng oldFields.length giống như newFields.length. Bạn cần một số logic để xác định các trường và trường mới bị thiếu. Cuối cùng, tôi sẽ không sử dụng vòng lặp foreach khi bạn cần tăng bộ đếm; chỉ cần sử dụng 'for'. –
cả hai trường hợp của cùng một lớp học chính xác, làm cách nào để số trường của chúng khác nhau? – kgrad
Ngoài ra, nếu đây là đơn luồng, bạn nên sử dụng StringBuilder thay vì StringBuffer. – cdmckay