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

Cách tạo mảng/ma trận của các đối tượng khác nhau trong java

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-02 08:27:12 26 4
mua khóa gpt4 Nike

Tôi hơi bối rối

Tôi đã tạo một lớp có tên là người có thuộc tính tuổi và tên (và nhận các phương thức đã đặt). Sau đó, trong một lớp khác, tôi muốn tạo một mảng người trong đó mỗi người có tuổi và tên khác nhau. Nhưng làm sao một số người lại có họ và tuổi của mình. Nếu tôi tạo chúng theo cách thủ công thì không sao, nhưng sử dụng vòng lặp for thì tôi gặp vấn đề này. Tôi nên làm gì để có được những người khác nhau?

Đây là mã cho lớp Người:

người thuộc tầng lớp công cộng {
tên chuỗi tĩnh;
tuổi int tĩnh;
người của công chúng() {
tên="tên";
tuổi=0;
}
Chuỗi tĩnh công khai getName() {
trả lại tên;
}
public static void setName(Tên chuỗi) {
người.name = tên;
}
int tĩnh công khai getAge() {
tuổi trở về;
}
public static void setAge(int age) {
người.age = tuổi;
}

public static void main(String[] args) {
// TODO sơ khai phương thức được tạo tự động

}

Đây là mã của tôi để tạo mảng/ma trận:

  mảng lớp công khai {
người tĩnh[][] a;

public static void main(String[] args) {
a=người mới[3][3];


//người được tạo thủ công
người đầu tiên=người mới();
người thứ hai=người mới();
người thứ ba=người mới();
first.setAge(12);
first.setName("đầu tiên");
giây.setAge(20);
thứ hai.setName("thứ hai");
thứ ba.setAge(40);
thứ ba.setName("thứ ba");


// tự động (ở đây tôi nhận được hiệu ứng không mong muốn)
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a.length; j++) {
a[i][j]=người mới();
a[i][j].setAge(10+j);
a[i][j].setName("Alia"+i);
System.out.println(i+" "+j+" "+a[i][j].getName()+" "+a[i][j].getAge());
}
}

// a[0][0]=đầu tiên;
// a[0][1]=giây;
// a[1][2]=thứ ba;
// System.out.println(a[0][0].getName()+" "+a[0][0].getAge());

// để kiểm tra và nó không hoạt động nữa
System.out.println(a[0][0].getName()+" "+a[0][0].getAge());

// for (int i = 0; i < a.length; i++) {
// for (int j = 0; j < a.length; j++) {
// System.out.println(i+" "+j+" "+a[i][j].getName()+" "+a[i][j].getAge());
// }
//
// }
lấy tên();

}

khoảng trống tĩnh riêng tư getname() {
System.err.println("lấy tên hàm");
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a.length; j++) {
System.out.println(a[i][j].getName());
}
}

}

}

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

Xóa khỏi thuộc tính người static Từ khóa. nếu nó làtĩnh, nó sẽ làTất cả các trường hợp(tất cả các đối tượng ký tự) được sử dụng.

Nhưng tôi sẽ làm điều này:

lớp công khai Người {
tên chuỗi cuối cùng công khai;
công khai int tuổi cuối cùng;

public Person(Tên chuỗi, int age) {
this.name = tên;
this.age = tuổi;
}

Chuỗi công khai toString() {
tên trả về + " (" + tuổi + ")";
}

public static void main(String... args) {
Danh sách người = new LinkedList();
people.add(người mới("David", 28));
people.add(Người mới ("Andreas", 27));

System.out.println(người);
}
}

Về cách java tạo mảng/ma trận của các đối tượng khác nhau, 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/4174543/

26 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