Tạo mảng
arrayName = new datatype[arraySize];
Ví dụ:
myList = new double[10];
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.
Khai báo và tạo mảng trong một bước
datatype[] arrayname = new
datatype[arraySize];
double[] myList = new double[10];
datatype arrayname[] = new
datatype[arraySize];
double myList[] = new double[10];
Độ dài mảng
Mỗi khi mảng được tạo, kích thước của nó được ấn định,
không thể thay đổi. Bạn có thể lấy kích thước mảng bằng cách
gọi:
arrayVariable.length
Ví dụ:
myList.length trả về giá trị 10
Khởi tạo mảng
Sử dụng vòng lặp:
for (int i = 0; i < myList.length; i++)
myList[i] = i;
Khai báo, tạo, khởi tạo trong một lệnh:
double[] myList = {1.9, 2.9, 3.4, 3.5};
Lưu ý: chỉ trong 1 lệnh, nhiều hơn 1 lệnh là sai:
double[] myList;
myList = {1.9, 2.9, 3.4, 3.5};
Khai báo, tạo, khởi tạo
double[] myList = {1.9, 2.9, 3.4, 3.5};
Câu lệnh trên tương đương với các câu lệnh sau:
double[] myList = new double[4];
myList[0] = 1.9;
myList[1] = 2.9;
myList[2] = 3.4;
myList[3] = 3.5;
Ví dụ 5.1
Mục đính: Chương trình nhận 6 số từ bàn phím, tìm
số lớn nhất và đếm số lần xuất hiện của giá trị đó.
Giả sử bạn nhập vào 3, 5, 2, 5, 5, và 5, số lớn nhất là
5 và số lần xuất hiện là 4.
TestArray
TestArray
Ví dụ 5.2: Xếp loại
Mục tiêu: đọc vào điểm của SV (int) từ bàn phím, lấy điểm
cao nhất (best), rồi xếp loại theo quy tắc sau:
–
Loại A: điểm >= best–10;
–
Loại B: điểm >= best–20;
–
Loại C: điểm >= best–30;
–
Loại D: điểm >= best–40;
–
Trái lại là loại F.
AssignGrade
AssignGrade
Truyền mảng cho phương thức
Java sử dụng truyền tham trị để truyền các tham số cho
phương thức. Có nhiều sự khác nhau quan trọng khi truyền
tham trị của biến có kiểu dữ liệu cơ sở và biến mảng.
Với tham số kiểu dữ liệu cơ sở, giá trị thực được truyền. Thay
đổi giá trị của tham số cục bộ trong phương thức không làm
thay đổi giá trị của biến bên ngoài phương thức.
Với tham số kiểu mảng, giá trị của tham số chứa một tham
chiếu tới mảng; tham chiếu này được truyền cho phương thức.
Bất kỳ sự thay đổi nào xuất hiện trong thân phương thức sẽ
làm thay đổi mảng gốc được truyền.
Ví dụ 5.3
Truyền tham số kiểu mảng
Mục tiêu: Minh họa sự khác nhau giữa truyền tham
số kiểu dữ liệu cơ sở và kiểu mảng.
TestPassArray
TestPassArray
Ví dụ 5.3 (tiếp)
swapFirstTwoInArray(a)
swapFirstTwoInArray(array)
Pass by value (Reference value)
a
Reference
:
a[0]
a[1]
array
Reference
swap(a[0], a[1])
swap( n1, n2)
Pass by value
a[0]
1
2
n1
n2
1
2
a[1]
Không có nhận xét nào:
Đăng nhận xét