Đặt vấn đề: Nhập 100 số nguyên, tính giá trị trung bình của chúng và cho biết có bao nhiêu số lớn hơn giá trị trung bình? Không khả thi nếu khai báo 100 biến. Sử dụng một cấu trúc dữ liệu gọi là mảng (array) để lưu 100 số nguyên đó. Show Minh họa mảng:
2. Khai báo và khởi tạo mảng một chiềuCú pháp khai báo mảng một chiều:
Trong đó, elementType có thể là kiểu dữ liệu nguyên thủy như int, char, double, byte,… hoặc các lớp (class) trong Java. arrayRefVar là tên mảng, có quy ước đặt tên giống tên biến. Ví dụ, khai báo một biến mảng myList lưu trữ các phần tử double:
Nhưng có bao nhiêu phần tử trong mảng?Để khai báo số phần tử có trong mảng, chúng ta cần phải cấp phát vùng nhớ cho mảng tương ứng với số phần tử mà có thể lưu trữ. Cú pháp:
Sử dụng từ khóa newđể cấp phát vùng nhớ cho mảng. Số vùng nhớ được cấp phát là arraySize, mỗi vùng nhớ có thể lưu trữ một giá trị kiểu elementType. Sau đó, gán mảng vừa tạo vào biến tham chiếu arrayRefVar. Ví dụ:
myList[0] tham chiếu phần tử đầu tiên của mảng. myList[9] tham chiếu phần tử cuối cùng của mảng. Có thể khai báo và cấp phát vùng nhớ cho mảng trong một câu lệnhCú pháp:
Ví dụ:
Khởi tạo mảng một chiềuTức là gán giá trị cho các phần tử trong mảng một chiều. Trong Java, có thể khởi tạo mảng trong lúc khai báo mảng. Ví dụ:
Ở ví dụ trên, chúng ta tạo ra một mảng tên là age và khởi tạo các phần tử của mảng trong dấu ngoặc nhọn {}. Với cách này, chúng ta không cần khai báo số phần tử trong mảng. Trình biên dịch Java sẽ tự động xác định được số phần tử trong mảng là 5. Trong Java, mỗi vùng nhớ tương ứng với mỗi phần tử trong mảng được đánh một chỉ mục (index). Chúng ta có thể khởi tạo mảng bằng việc xác định các chỉ mục này. Ví dụ:
3. Kích thước mảng và giá trị mặc định trong mảngKhi một mảng được cấp phát, số lượng phần tử mảng là cố định và không thể thay đổi. Để lấy kích thước mảng, chúng ta dùng arrayRefVar.lenght. Ví dụ, Khi một mảng được tạo, giá trị các phần tử mảng được gán một giá trị mặc định: 0 nếu kiểu số, \u0000 nếu kiểu char và false nếu kiểu boolean. 4. Truy cập các phần tử trong mảngCác phần tử của mảng được truy cập thông qua chỉ mục (index). Bắt đầu là 0, nghĩa là từ phần tử thứ 0 đến arrayRefVar.length-1. Ví dụ, myList có 10 phần tử kiểu double có chỉ số từ 0 đến 9. Cú pháp:
Ví dụ:
Bài này đã giới thiệu cách khai báo, cấp phát vùng nhớ cho mảng cũng như khởi tạo mảng. Bài sau, chúng ta sẽ tìm hiểu một số kỹ thuật lập trình với mảng 1 chiều trong Java.
Mời bạn đánh giá bài viết |