Danh mục

Bài giảng Kỹ thuật lập trình Java - Chương 5: Mảng

Số trang: 32      Loại file: pdf      Dung lượng: 889.63 KB      Lượt xem: 13      Lượt tải: 0    
10.10.2023

Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng "Kỹ thuật lập trình Java - Chương 5: Mảng" cung cấp cho người đọc các kiến thức: Mảng một chiều, sao chép mảng, mảng nhiều chiều, tìm kiếm phần tử trong mảng một chiều, sắp xếp các phần tử trong mảng một chiều. Mời các bạn cùng tham khảo nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình Java - Chương 5: Mảng Mảng Chỉ số phần tử mảng 0 1 2 3 4 a 7 20 5 9 3Tên mảng Giá trị Trả lời câu hỏi1. Mảng trên có mấy chiều?2. Các phần tử của mảng có chung đặc điểm gì? a. Màu sắc b. Hình dạng c. Số nguyên3. Trong java, mảng trên được khai báo như thế nào?4. Cấu trúc lệnh nào thường dùng để duyệt mảng? a. IF b. For c. While5. Tìm các số nguyên tố trong mảng trên? NỘI DUNG MẢNGo Mảng một chiềuo Sao chép mảngo Mảng nhiều chiềuo Tìm kiếm phần tử trong mảng một chiềuo Sắp xếp các phần tử trong mảng một chiềuKiểu dữ liệu mảngJava có 2 kiểu dữ liệu cơ bản:o Kiểu dữ liệu cơ sở: có 8 kiểuo Kiểu dữ liệu tham chiếu (hay dẫn xuất): có 3 kiểu- Kiểu mảng- Kiểu lớp- Kiểu giao tiếp (interface).Kiểu dữ liệu mảngo Khái niệm: Mảng là tập hợp nhiều phần tử có cùng tên, cùng kiểu dữ liệu. Mỗi phần tử trong mảng được truy xuất thông qua chỉ số của nó trong mảng.o Khai báo: []; hoặc [] ;o VD: int[] iarray; hoặc int iarray[]; int[] arrInt3, arrInt4, arrInt5;Kiểu dữ liệu mảngCấp phát bộ nhớ cho mảng:o Không giống C, C++o Kích thước của mảng phải được xác định trước khi khai báo:o VD: int arrInt[100]; //sẽ báo lỗio Dùng từ khóa new để cấp phát bộ nhớ cho mảng.o VD: int iarrInt = new int[100];Kiểu dữ liệu mảng Khởi tạo giá trị cho mảngo Có thể khởi tạo giá trị ban đầu cho các phần tử của mảng khi nó được khai báo.o VD: int[] arrInt = {1, 2, 3, 5, 6}; char[] arrChar = {‘a’, ‘b’, ‘c’};String arrString[] = {“Nguyen Van A”, “Tran Van B”};Chú ý:o Luôn khởi tạo hoặc cấp phát mảng trước khi sử dụngo Một số khai báo không hợp lệ: int[5] iarray; int iarray[5];Truy cập mảngo Chỉ số mảng trong Java bắt đầu từ 0. Vì vậy phần tử đầu tiên có chỉ số là 0, phần tử thứ n có chỉ số là n - 1.o Các phần tử của mảng được truy xuất thông qua chỉ số của nó đặt giữa cặp dấu ngoặc vuông ([]).o VD: int arrInt[] = {1, 2, 3}; int x = arrInt[0]; // x sẽ có giá trị là 1. int y = arrInt[1]; // y sẽ có giá trị là 2. int z = arrInt[2]; // z sẽ có giá trị là 3.Chiều dài mảng – số phần tử mảngo Lấy số phần tử mảng ta dùng lệnh tenmang.lengtho VD: int a[]=new int[10]; int b[]={1,3,5}; Kết quả: a.length=10; b.length=3;Một số ví dụ về mảng//Nhập và xuất giá trị các phần tử của một mảng các số nguyên:public class ArrayDemo { public static void main(String[] args) { int arrInt[] = new int[10]; int i; for(i = 0; i < arrInt.length; i ++) arrInt[i] = i; for(i = 0; i < arrInt.length; i ++) System.out.println(This is arrInt[ + i +]: +arrInt[i]); }}Một số ví dụ về mảng//Tìm phần tử có giá trị nhỏ nhất (Min) và lớn nhất (Max) trongmột mảng.public class TimMaxMin { public static void main(String[] args) { int nums[] = { 99, -10, 100123, 18, -978, 5623, 463, -9,287, 49 }; int min, max; min = max = nums[0]; for(int i=1; i < 10; i++){ if(nums[i] < min) min = nums[i]; if(nums[i] > max) max = nums[i]; } System.out.println(Min and max: + min + + max); } } Một số ví dụ về mảngimport java.util.Scanner; //sap xep mangpublic class BTMang { System.out.println(Sap xep cac phan public static void main(String[] args) { tu cua mang theo chieu tang dan:); Scanner input =new Scanner(System.in); for(i=0;i Một số ví dụ về mảngimport java.util.Scanner; public static void Sapxep(int[] a){public class BTMang2 { int i, j, tg; public static void Nhap(int[] a){ System.out.println(Sap xep cac phan Scanner input =new Scanner(System.in); tu cua mang theo chieu tang dan:); System.out.println(Nhap vao cac phan for(i=0;i Một số ví dụ về mảngpublic static void main(String[] args) { int [] a = new int[5]; BTMang2 m2 = new BTMang2(); m2.Nhap(a); //in mang m2.In(a); m2.Sapxep(a); }}Sao chép mảng Sử dụng một vòng lặp: • int[] sourceArray = {2, 3, 1, 5, 10}; • int[] targetArray = new int[sourceArray.length]; • for (int i = 0; i < sourceArray.length; i++) • targetArray[i] = sourceArray[i]; Dùng lệnh gán: Gán tham chiếu của sourceArray cho targerArray • targetArray = sourceArray; Dùng tiện ích arraycopy • System.arraycopy(srcArray, src_pos, tarArray, tar_pos, length);Sao chép mảngimport java.util.*;public class randomfile { public static void main(String[] args) { int[] ...

Tài liệu được xem nhiều: