cuốn sách gpt4 ai đã làm

Cách xác định có bao nhiêu trường được đặt trên một đối tượng trong Java

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-01 22:32:50 hai mươi bốn 4
mua khóa gpt4 Nike

Không chắc tôi có thể làm được điều này không, nhưng giả sử tôi có đối tượng:

lớp công khai SomeObject
{
trường chuỗi riêng1;
trường chuỗi riêng2;
....

// Getters và setters Blah Blah cho tất cả các trường
}

Tôi muốn đếm xem có bao nhiêu trường trong số này không có giá trị. Đối tượng cụ thể của tôi có khoảng 40 trường, vì vậy tôi thực sự không muốn có khối if để kiểm tra từng trường trong số 40 trường riêng lẻ. Tôi đã tự hỏi liệu tôi có thể làm điều này với sự phản ánh bằng cách nào đó không? Nhưng thực sự tôi không biết mình đang làm gì với nó. Tốt hơn là chỉ lặp qua tất cả các trường và kiểm tra giá trị của chúng.

Tôi cảm thấy đây là điều không cần bàn cãi đối với những người ở bên ngoài.

câu trả lời hay nhất

vâng bạnCó thểLàm điều này thông qua sự phản ánh:

SomeObject objectReference = ...; // Đối tượng bạn quan tâm
Classclazz = SomeObject.class;
int nullCount = 0;
for (Trường trường : clazz.getDeclaredFields())
{
field.setAccessible(true);
if (field.get(objectReference) == null)
{
nullCount++;
}
}

(Có thể có nhiều trường hợp ngoại lệ, quyền, v.v.)

Mặc dù điều này có vẻ hơi giống một vụ hack...thành thật mà nói, đó là một yêu cầu hơi kỳ quặc. Bạn có thực sự cần tất cả 40 trường không, bạn có cần chúng nhưmột mìnhtrường thay vì (nói) một mảng?

Về java - cách xác định có bao nhiêu trường được đặt trên một đối tượng trong Java, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/7893683/

hai mươi bốn 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress