1. Các ví dụ hữu ích khi làm việc với mảng:

Tôi nghĩ đã đến lúc chuyển sang một số nhiệm vụ thực tế. Chúng ta sẽ bắt đầu với một số cách đơn giản nhất:

Điền vào một mảng gồm 10 số với các số từ 0 đến 9:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = i;
}
  • Tạo đối tượng mảng 10 phần tử
  • Vòng lặp từ 0 đến 9 (bao gồm)
  • Gán các giá trị từ 0 đến 9 cho các ô
Điền vào một mảng gồm 10 số với các số từ 1 đến 10:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = i + 1;
}
  • Tạo đối tượng mảng 10 phần tử
  • Vòng lặp từ 0 đến 9 (bao gồm)
  • Gán các giá trị từ 1 đến 10 cho các ô
Điền vào một mảng 10 số với các số từ 10 đến 1:
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = 10 - i;
}
  • Tạo đối tượng mảng 10 phần tử
  • Vòng lặp từ 0 đến 9 (bao gồm)
  • Gán các giá trị từ 10 đến 1 cho các ô

2. Hiển thị số theo thứ tự ngược lại

Bây giờ hãy chuyển sang các ví dụ phức tạp và thú vị hơn. Chúng ta sẽ bắt đầu với nhiệm vụ sau: đọc 10 số từ bàn phím và hiển thị chúng theo thứ tự ngược lại.

Chúng tôi biết cách đọc số từ bàn phím. Nhưng làm thế nào để chúng ta đọc 10 số? Tất nhiên, chúng ta có thể tạo 10 biến: a1, a2, v.v. Nhưng điều đó sẽ cực kỳ bất tiện. Và nếu chúng ta phải đọc 100 số thì sao? Chúng ta sẽ tạo 100 biến? Khi điều đó xảy ra, chúng ta vừa tìm hiểu về mảng, được tạo để lưu trữ nhiều giá trị.

Mã để đọc 10 giá trị sẽ giống như thế này (đoạn mã này sẽ xuất hiện bên trong mainphương thức):

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = console.nextInt();
}
  • Tạo một Scannerđối tượng
  • Tạo đối tượng mảng 10 phần tử
  • Vòng lặp từ 0 đến 9 (bao gồm)
  • Đọc một số từ bàn phím và lưu nó vào ô tiếp theo của mảng

Nhưng làm thế nào để bạn in các giá trị của mảng theo thứ tự ngược lại?

Để làm điều này, chúng ta cần thêm một vòng lặp, trong đó isẽ nhận các giá trị từ 9 đến 0 (đừng quên rằng số chỉ số mảng bắt đầu từ 0). Mã chương trình cuối cùng sẽ giống như thế này:

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
   array[i] = console.nextInt();
}
for (int i = 9; i >= 0; i--) {
   System.out.println(array[i]);
}
  • Tạo một Scannerđối tượng
  • Tạo đối tượng mảng 10 phần tử
  • Vòng lặp từ 0 đến 9 (bao gồm)
  • Đọc một số từ bàn phím và lưu nó vào ô tiếp theo của mảng
  • Vòng lặp từ 9 đến 0 (bao gồm)
  • Hiển thị ô tiếp theo trong mảng


3. Tìm phần tử nhỏ nhất trong mảng

Hãy xem xét một nhiệm vụ rất thú vị và phổ biến: tìm phần tử tối thiểu trong một mảng. Chúng tôi sẽ lấy mã mà chúng tôi đã sử dụng để điền vào mảng trong tác vụ trước:

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
    array[i] = console.nextInt();
}
  • Tạo một Scannerđối tượng
  • Tạo đối tượng mảng 10 phần tử
  • Vòng lặp từ 0 đến 9 (bao gồm)
  • Đọc một số từ bàn phím và lưu nó vào ô tiếp theo của mảng

Bây giờ tất cả những gì chúng ta cần làm là viết mã sẽ tìm phần tử tối thiểu trong mảng và hiển thị nó trên màn hình. Làm thế nào để bạn làm điều đó?

Chà, để tìm phần tử tối thiểu, bạn cần:

  • Lấy phần tử đầu tiên của mảng làm "mức tối thiểu hiện tại".
  • So sánh từng phần tử của mảng với nó
  • Nếu phần tử tiếp theo nhỏ hơn "mức tối thiểu hiện tại", thì hãy cập nhật giá trị của "mức tối thiểu hiện tại"

Đây là cách nó sẽ trông trong mã:

Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
    array[i] = console.nextInt();
}
int min = array[0];

for (int i = 1; i < 10; i++) {
    if (array[i] < min)

       min = array[i];
}
System.out.println(min);
  • Tạo một Scannerđối tượng
  • Tạo đối tượng mảng 10 phần tử
  • Vòng lặp từ 0 đến 9 (bao gồm)
  • Đọc một số từ bàn phím và lưu nó vào ô tiếp theo của mảng
  • Phần tử thứ 0 của mảng được lấy làm số nhỏ nhất
  • Vòng lặp từ 1 đến 9 (bao gồm)
  • Nếu phần tử hiện tại nhỏ hơn "mức tối thiểu hiện tại"
  • sau đó cập nhật giá trị của "mức tối thiểu hiện tại"
  • Hiển thị số nhỏ nhất tìm được trên màn hình