ArrayList thay thế phần tử nếu tồn tại ở một chỉ mục nhất định?


82

Làm thế nào để thay thế phần tử nếu tồn tại trong ArrayList tại một chỉ mục nhất định?

Câu trả lời:


179
  arrayList.set(index i,String replaceElement);

3
ở đây các câu hỏi chính nó là - "thay thế yếu tố nếu thoát", nhưng lỗi tránh, null kiểm tra cần thiết
dev4u


có cách nào mà không có chỉ số vượt qua trong đó không ??
Arpit Patel

@ArpitPatel arrayList.add () có thể được sử dụng để thêm một phần tử mới. Bạn không thể chỉ định vị trí trong danh sách mảng mà bạn muốn thêm thứ gì đó mà không có chỉ mục.
Alan

5

Nếu bạn đang yêu cầu các chức năng được thiết lập khác nhau, tôi khuyên bạn nên mở rộng ArrayList với lớp của riêng bạn. Bằng cách này, bạn sẽ không phải xác định hành vi của mình ở nhiều nơi.

// You can come up with a more appropriate name
public class SizeGenerousArrayList<E> extends java.util.ArrayList<E> {

    @Override
    public E set(int index, E element) {
        this.ensureCapacity(index+1); // make sure we have room to set at index
        return super.set(index,element); // now go as normal
    }

    // all other methods aren't defined, so they use ArrayList's version by default

}

2

Một phần tử bị ghi đè nếu nó đã tồn tại ở một chỉ mục, đó là hành vi mặc định: Javadoc .

Hay tôi thiếu hoàn toàn quan điểm của bạn?


0

Chỉ cần thêm dấu ngắt sau câu lệnh remove () của bạn


Xin vui lòng bạn có thể cung cấp đầy đủ câu trả lời, Cảm ơn
Prags

0

chỉ cần sử dụng phương thức này bên trong danh sách mảng

list.set(/*index*/,/*value*/)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.