bí quyết góp phần tử vào mảng Java tuyệt vời nhất 2024

Xem bí quyết góp phần tử vào mảng Java tuyệt vời nhất 2024

Trong hướng dẫn này, chúng ta sẽ xem xét ngắn gọn các điểm tương đồng và khác lạ trong việc cấp phát bộ nhớ giữa các mảng Java và ArrayList tiêu chuẩn. Hơn nữa, chúng ta sẽ xem cách nối và chèn các phần tử trong một mảng và ArrayList

2. Mảng Java và ArrayList

Mảng Java là một cấu trúc dữ liệu cơ bản được tiếp tế bởi ngôn ngữ. Ngược lại, ArrayList là một đang chạy của giao diện List được hỗ trợ bởi một mảng và được hỗ trợ trong Java Collections Framework

2. 1. Truy cập và sửa đổi các phần tử

Chúng ta có thể truy cập và sửa đổi các phần tử mảng bằng bí quyết dùng ký hiệu dấu ngoặc vuông

System.out.println(anArray[1]);
anArray[1] = 4;

Mặt khác, ArrayList có một tập hợp các phương máyc để truy cập và sửa đổi các phần tử

int n = anArrayList.get(1);
anArrayList.set(1, 4);

2. 2. kích cỡ cố định phân tích khuôn khổ động

Cả mảng và ArrayList đều phân bổ bộ nhớ heap theo bí quyết tương tự, nhưng điểm khác lạ là mảng có khuôn khổ cố định, trong khi kích thước của ArrayList tăng động

Vì một mảng Java có khuôn khổ cố định, bên tôi cần hỗ trợ độ lớn trong khi khởi tạo nó. không thể tăng độ lớn của mảng sau khi nó đã được khởi tạo. Thay vào đó, chúng ta cần tạo một mảng mới có kích cỡ đã điều chỉnh và sao chép tất cả các phần tử từ mảng trước đó

ArrayList là một đang chạy mảng có thể thay đổi độ lớn của giao diện Danh sách – nghĩa là ArrayList lớn mạnh linh hoạt khi các phần tử được cung cấp nó. lúc số phần tử bây giờ (bao gồm cả phần tử mới được sản xuất ArrayList) lớn hơn kích cỡ tối đa của mảng bên dưới, thì ArrayList sẽ tăng khuôn khổ của mảng bên dưới

Chiến lược phát triển cho mảng bên dưới phụ thuộc vào việc đang chạy ArrayList. Tuy nhiên, vì kích cỡ của mảng bên dưới ko thể tăng lên một bí quyết linh hoạt, đề nghị một mảng mới được tạo và các phần tử mảng cũ được sao chép vào mảng mới

Hoạt động thêm có chi phí thời gian khấu hao ko đổi. nói giải pháp khác, việc thêm n phần tử vào ArrayList cần O(n) thời gian

2. 3. các cái phần tử

Một mảng có thể đựng các kiểu dữ liệu nguyên thủy cũng như ko nguyên thủy, tùy thuộc vào định nghĩa của mảng. Tuy nhiên, một ArrayList chỉ có thể đựng những kiểu dữ liệu ko nguyên thủy

lúc chúng ta chèn những phần tử có kiểu dữ liệu nguyên thủy vào một ArrayList, trình biên dịch Java sẽ tự động chuyển đổi kiểu dữ liệu nguyên thủy thành lớp bao bọc đối tượng tương ứng của nó

Bây giờ chúng ta hãy xem giải pháp nối và chèn những phần tử trong mảng Java và ArrayList

3. Nối thêm một phần tử

Như chúng ta đã thấy, mảng có khuôn khổ cố định

bởi thế, để nối thêm một phần tử, thứ nhất, chúng ta cần khai báo một mảng mới lớn hơn mảng cũ và sao chép những phần tử từ mảng cũ sang mảng mới tạo. Sau đó, chúng ta có thể nối thêm phần tử mới vào mảng vừa tạo này

Hãy xem giải pháp vận hành nó trong Java mà không sử dụng bất kỳ lớp tiện ích nào

public Integer[] addElementUsingPureJava(Integer[] srcArray, int elementToAdd) {
    Integer[] destArray = new Integer[srcArray.length+1];

    for(int i = 0; i < srcArray.length; i++) {
        destArray[i] = srcArray[i];
    }

    destArray[destArray.length - 1] = elementToAdd;
    return destArray;
}

ngoại trừ ra, lớp Arrays tạo buộc buộc đề nghị một phương lắp thêmc tiện ích copyOf(), hỗ trợ tạo một mảng mới có sự cân đối lớn hơn và sao chép tất cả những phần tử từ mảng cũ

int[] destArray = Arrays.copyOf(srcArray, srcArray.length + 1);

lúc chúng ta đã tạo một mảng mới, chúng ta có thể dễ dàng thêm phần tử mới vào mảng

destArray[destArray.length - 1] = elementToAdd;

Mặt khác, việc thêm một phần tử vào ArrayList khá dễ dàng

anArrayList.add(newElement);

4. Chèn một phần tử vào chỉ mục

Chèn thêm một phần tử vào một chỉ số cho trước mà không khiến cho cho mất đi những phần tử đã thêm trước đó chưa buộc buộc bắt buộc là một làm việc đơn kém chất lượngn trong mảng

Trước hết, giả dụ mảng đã chứa số phần tử bằng mang kích cỡ của nó, thì lần đầu chúng ta cần tạo một mảng mới có kích thước lớn hơn và sao chép những phần tử sang mảng mới

Hơn nữa, chúng ta cần dịch chuyển tất cả những phần tử tạo đề nghị sau chỉ mục đã chỉ định sang phải một vị trí

public static int[] insertAnElementAtAGivenIndex(final int[] srcArray, int index, int newElement) {
    int[] destArray = new int[srcArray.length+1];
    int j = 0;
    for(int i = 0; i < destArray.length-1; i++) {

        if(i == index) {
            destArray[i] = newElement;
        } else {
            destArray[i] = srcArray[j];
            j++;
        }
    }
    return destArray;
}

Tuy nhiên, lớp ArrayUtils phân phối cho chúng ta một fakei pháp đơn kém chất lượngn hơn để chèn những phần tử vào một mảng

int[] destArray = ArrayUtils.insert(2, srcArray, 77);

Chúng ta phải chỉ định chỉ mục mà chúng ta muốn chèn giá trị, mảng nguồn và giá trị để chèn

Phương thiết bịc insert() trả về một mảng mới chứa số lượng phần tử lớn hơn, có phần tử mới ở chỉ mục đã chỉ định và tất cả những phần tử còn lại dịch chuyển một vị trí sang phải

Lưu ý rằng đối số cuối cùng của phương đồ vậtc insert() là một đối số biến, Bởi vậy chúng ta có thể chèn bất kỳ số lượng phần tử nào vào một mảng

Hãy dùng nó để chèn ba phần tử trong srcArray bắt đầu từ chỉ mục hai

________số 8

Và những phần tử còn lại sẽ được dịch chuyển ba vị trí sang phải

Hơn nữa, điều này có thể đạt được một bí quyết tầm thường đối mang ArrayList

anArrayList.add(index, newElement);

ArrayList dịch chuyển những phần tử và chèn phần tử vào vị trí sự đòi hỏi

5. Phần kết luận

Trong bài viết này, chúng ta đã xem xét mảng Java và ArrayList. Hơn nữa, bên tôi đã xem xét những điểm tương đồng và khác lạ giữa hai. Cuối cùng, chúng ta đã thấy giải pháp nối và chèn những phần tử trong một mảng và ArrayList

Bạn có thể thêm một phần tử vào một mảng không?

Khi bạn muốn thêm một phần tử vào cuối mảng của mình, hãy sử dụng hàm push() . giả dụ bạn cần thêm một phần tử vào đầu mảng của mình, hãy tiêu dùng unshift(). nếu bạn muốn thêm một phần tử vào một vị trí cụ thể của mảng, hãy dùng splice().

Bạn có thể thêm nhiều phần tử vào một mảng trong Java không?

Mảng Java có kích thước cố định. Bạn không thể nối những phần tử trong một mảng . Thay vào đó, chúng ta có thể sử dụng một đối tượng ArrayList để đang chạy giao diện Danh sách.

Làm giải pháp nào để thêm những phần tử vào một mảng trong Java một phương pháp linh hoạt?

Để thêm phần tử vào mảng động, chúng ta tiêu tiêu dùng hàm add() . kém chất lượngi trình. bên tôi đã tạo một ArrayList tôi. e. , một mảng động và thêm những phần tử vào nó. Chúng ta có thể thấy rằng sau khi những phần tử được cung ứng, kích thước của mảng động sẽ tăng lên.

Bạn đang đọc bài viếtbí quyết góp phần tử vào mảng Java tuyệt vời nhất 2024


✅ Thâm niên trong nghềCông ty dày dặn nghiệm trong ngành giặt từ 5 năm trở lên.
✅ Nhân viên chuyên nghiệpĐội ngũ nhân viên chuyên nghiệp, nhiệt tình có kinh nghiệm và kỹ năng trong giặt đồ.
✅ Chi phí cạnh tranhChi phí giặt luôn cạnh tranh nhất thị trường và đảm bảo không có bất kỳ chi phí phát sinh nào.
✅ Máy móc, thiết bị hiện đại⭐Chúng tôi đầu tư hệ thống máy móc, thiết bị hiện đại nhất để thực hiện dịch vụ nhanh chóng và hiệu quả nhất

HỆ THỐNG CỬA HÀNG GIẶT LÀ CÔNG NGHIỆP PRO

 

Cở sở 01: Ngõ 199/2 Đường Phúc Lợi, Phúc Lợi, Long Biên, Hà Nội

Cơ Sở 02: Số 200, Trường Chinh, Quận Thanh Xuân, Hà Nội

Cơ Sở 03: Số 2C Nguyên Hồng, Thành Công, Ba Đình, Hà Nội

Cơ Sở 04: Số 277 Thanh Nhàn, Hai Bà Trưng, Hà Nội

Cơ Sở 05: Số 387 Phúc Tân, Lý Thái Tổ, Hoàn Kiếm, Hà Nội

Cơ Sở 06: Số 4 Hàng Mành, Hàng Gai, Hoàn Kiếm, Hà Nội

Cơ Sở 07: Số 126, Thượng Đình, Khương Trung, Thanh Xuân, Hà Nội

Cơ Sở 08: Số 261 Nguyễn Khang, Yên Hoà, Cầu Giấy, Hà Nội

Cơ Sở 09: Số 68 Nguyễn Lương Bằng, Chợ Dừa, Đống Đa, Hà Nội

Cơ Sở 10: Tầng 7, Plaschem 562 Nguyễn Văn Cừ, Long Biên, Hà Nội

Cơ Sở 11: Số 72, Phố An Hòa, P. Mộ Lao, Hà Đông, Hà Nội

Cơ Sở 12: Số 496, Thụy Khuê, Bưởi, Quận Tây Hồ, Hà Nội