NGÂN HÀNG NHÀ NƯỚC VIỆT NAM - BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NGÂN HÀNG TP. HỒ CHÍ MINH
KHOA: HỆ THỐNG THƠNG TIN QUẢN LÝ
CƠ SỞ LẬP TRÌNH
BÁO CÁO BÀI TẬP NHĨM
Đề tài: Tìm hiểu về ngơn ngữ lập trình Java
Thành viên và nhiệm vụ của nhóm:
MSSV
Họ và tên
030237210066
Lưu Thị Thu Hà
Nhiệm vụ
-Tổng quan về ngôn ngữ lập trình Java
-Viết chương trình số 3
-Mảng một chiều trong Java
030237210181
Phan Thị Anh Thư
-Viết chương trình số 4
-Tổng hợp lý thuyết
-Tìm hiểu kiểu dữ liệu, hằng, biến
trong Java
030237210182
Võ Huỳnh Anh Thư
-Viết chương trình số 1, 2
-Tổng hợp code
030237210137
Trần Cao Bảo Nhiên -Chương trình con Java
Tieu luan
MỤC LỤC
I. TỔNG QUAN VỀ NGƠN NGỮ LẬP TRÌNH JAVA .......................................3
1. Giới thiệu về ngơn ngữ lập trình Java.................................................................3
1.1. Java là gì ? ....................................................................................................3
1.2. Lịch sử phát triển của ngơn ngữ lập trình Java.............................................3
2. Đặc điểm của ngơn ngữ lập trình Java................................................................4
3. Mức độ phổ biến của ngơn ngữ lập trình Java....................................................5
4. Ứng dụng của ngơn ngữ lập trình Java ...............................................................5
II. KIỂU DỮ LIỆU, HẰNG, BIẾN, BIỂU THỨC ................................................5
1. Kiểu dữ liệu: .......................................................................................................5
2. Khai báo biến: .....................................................................................................6
3. Khai báo hằng: ....................................................................................................6
4. Khai báo biểu thức: .............................................................................................6
III. CHƯƠNG TRÌNH CON TRONG JAVA .......................................................6
IV. MẢNG MỘT CHIỀU TRONG JAVA ............................................................7
V. CÁC CHƯƠNG TRÌNH MẢNG 1 CHIỀU ....................................................11
Chương trình 1: .....................................................................................................11
Chương trình 2: .....................................................................................................12
Chương trình 3: .....................................................................................................13
Chương trình 4: .....................................................................................................14
2
Tieu luan
I. TỔNG QUAN VỀ NGƠN NGỮ LẬP TRÌNH JAVA
1. Giới thiệu về ngơn ngữ lập trình Java
1.1. Java là gì ?
Java là một ngơn ngữ lập lập trình, được phát triển bởi Sun Microsystem vào năm
1995, là ngôn ngữ kế thừa trực tiếp từ C/C++ và là một ngôn ngữ lập trình hướng
đối tượng.
1.2. Lịch sử phát triển của ngơn ngữ lập trình Java
Java được khởi đầu bởi James Gosling và các cộng sự của công ty Sun
MicroSystem năm 1991.
Ban đầu Java được tạo ra nhằm mục đích viết phần mềm cho các sản phẩm gia
dụng như tivi, máy giặt, lị nướng,…và có tên là Oak tương tự như C++ nhưng loại
bỏ một số tính năng nguy hiểm của C++ và có khả năng chạy trên nhiều nền phần
cứng khác nhau. Cùng lúc đó world wide web bắt đầu phát triển và Sun đã thấy được
tiềm năng của ngôn ngữ Oak nên đã đầu tư cải tiến và phát triển. Sau đó khơng lâu
ngơn ngữ mới với tên gọi là Java (tên một hòn đảo ở Indonesia - hòn đảo nổi tiếng
với loại coffee Peet) ra đời và được giới thiệu năm 1995.
Java được phát hành năm 1994, đến năm 2010 được Oracle mua lại từ Sun
MicroSystem.
Java được tạo ra với tiêu chí “Viết (code) một lần, thực thi khắp nơi” (Write Once,
Run Anywhere – WORA). Chương trình phần mềm viết bằng Java có thể chạy trên
mọi nền tảng (platform) khác nhau thông qua một môi trường thực thi với điều kiện
có mơi trường thực thi thích hợp hỗ trợ nền tảng đó.
Mục đích của Java để phát triển ứng dụng cho các thiết bị điện tử thông minh.
Hiện nay Java được sử dụng để phát triển nhiều loại ứng dụng khác nhau như: Cơ
sở dữ liệu, mạng, Internet, games, viễn thông,…
3
Tieu luan
2. Đặc điểm của ngơn ngữ lập trình Java
▪ Đơn giản và quen thuộc: Vì Java kế thừa trực tiếp từ C/C++ nên nó có những
đặc điểm của ngơn ngữ này, Java đơn giản vì mặc dù dựa trên cơ sở C++ nhưng Sun
đã cẩn thận lược bỏ các tính năng khó nhất của của C++ để làm cho ngơn ngữ này
dễ sử dụng hơn.
▪ Hướng đối tượng: Tương tự như C++ nhưng Java là một ngơn ngữ lập trình
hướng đối tượng hồn tồn. Hướng đối tượng trong Java khơng có tính đa kế thừa
(multi inheritance) như trong C++ mà thay vào đó Java đưa ra khái niệm interface
để hỗ trợ tính đa kế thừa.
▪ Mạnh mẽ (thể hiện ở cơ chế tự động thu gom rác - Garbage Collection) và an
toàn: Java yêu cầu chặt chẽ về kiểu dữ liệu và phải mơ tả rõ ràng khi viết chương
trình. Chúng sẽ kiểm tra lúc biên dịch và cả trong thời gian thơng dịch, vì vậy Java
loại bỏ các kiểu dữ liệu dễ gây lỗi.
▪ Kiến trúc trung lập, độc lập nền tảng và có tính khả chuyển (Portability).
▪ Hiệu suất cao.
▪ Máy ảo (biên dịch và thông dịch).
▪ Phân tán: Java có thể được dùng để xây dựng làm việc trên nhiều phần cứng, hệ
điều hành và giao diện đồ họa. Java được thiết kế cho các ứng dụng chạy trên mạng.
Vì vậy chúng được sử dụng rộng rãi trên Internet, nơi sử dụng nhiều nền tảng khác
nhau.
▪ Đa nhiệm - đa luồng (MultiTasking - Multithreading): Java hỗ trợ lập trình đa
nhiệm, đa luồng cho phép nhiều tiến trình, tiến trình có thể chạy song song cùng
một thời điểm và tương tác với nhau.
4
Tieu luan
3. Mức độ phổ biến của ngơn ngữ lập trình Java
Code Java làm việc lý tưởng trên tất cả các thiết bị và hệ điều hành, miễn là được
cài đặt Java Runtime Enviroment. Dựa trên khảo sát gần đây nhất từ PYPL và
TIOBE thì Java vẫn là một trong các ngơn ngữ lập trình được u thích nhất.
Ngơn ngữ Java được ứng dụng rộng rãi trong việc phát triển ứng dụng Web,
Mobile, Big Data, Dịch vụ tài chính,… Có thể thấy, ngơn ngữ Java khơng những
được u thích mà cịn là một trong nhiều ngơn ngữ lập trình phổ biến nhất.
4. Ứng dụng của ngơn ngữ lập trình Java
▪ Thiết kế những trang web có tính bảo mật cao: internet banking, kiểm tốn, xử
lí dữ liệu, bảo mật thơng tin, …
▪ Trong lĩnh vực giao dịch chứng khoán
▪ Xây dựng các ứng dụng website
▪ Phát triển các ứng dụng cho hệ điều hành Android
▪ Phát triển trò chơi
▪ Java được sử dụng trong các lĩnh vực đa dạng: các công nghệ khoa học dữ liệu
lớn để xử lý các ngôn ngữ tự nhiên; lĩnh vực tài chính ngân hàng; đầu tư chứng
khoán, …
II. KIỂU DỮ LIỆU, HẰNG, BIẾN, BIỂU THỨC
1. Kiểu dữ liệu:
Có 8 kiểu dữ liệu nguyên thủy được hỗ trợ bởi ngơn ngữ lập trình Java
5
Tieu luan
Kiểu dữ liệu
Kích cỡ
Phạm vi
byte
1 byte
-127 đến 128
short
2 bytes
-32,768 đến 32,767
int
4 bytes
-2,147,483,648 đến 2,147,483,647
long
8 bytes
-9,223,372,036,854,775,808 đến
9,223,372,036,854,775,807
float
4 bytes
Đủ để lưu trữ từ 6 đến 7 chữ số thập phân
double
8 bytes
Đủ để lưu trữ 15 chữ số thập phân
boolean
1 byte
Lưu trữ giá trị True hoặc False
char
2 bytes
Lưu trữ một ký tự / chữ cái hoặc các giá trị ASCII
2. Khai báo biến:
•
byte number = 5;
•
int so = 10;
•
boolean giatri = True;
3. Khai báo hằng:
•
final int hangso = 5;
4. Khai báo biểu thức:
int a = 1, b = 2 ,c;
c = a + b - 1;
III. CHƯƠNG TRÌNH CON TRONG JAVA
Cú pháp
6
Tieu luan
Giải thích
▪
Modifiers (tạm dịch là phạm vi sửa đổi và truy cập)
▪
returnType: kiểu dữ liệu trả về
▪
nameOfMethod: tên của hàm(method)
▪
Parameter là các tham số đầu vào của hàm(có thể có nhiều tham số với nhiều
kiểu dữ liệu khác nhau)
▪
// body: là các mã code bên trong hàm
Được chia ra làm 2 loại hàm:
• Hàm trả về kết quả
Đối với hàm có kết quả trả về, chúng ta cần dùng từ khố return để trả về
kết qủa mà nó đã tính tốn được.
Khai báo biến có kiểu dữ kiệu tương ứng với kết quả trả về của hàm để nhận
giá trị trả về.
• Hàm khơng trả về kết quả
IV. MẢNG MỘT CHIỀU TRONG JAVA
- Mảng một chiều:
+ Là dãy hữu hạn các phần tử có cùng kiểu dữ liệu và các phần tử được lưu
trữ trong một dãy các ô nhớ liên tục trên bộ nhớ.
+ Mỗi phần tử của mảng một chiều được truy xuất bởi tên mảng và vị trí của
phần tử trong mảng gọi là chỉ số (index) được đặt trong cặp dấu ngoặc vuông [].
Chỉ số mảng luôn bắt đầu từ 0 đến tổng số phần tử trong mảng trừ cho 1.
7
Tieu luan
-Khai báo mảng một chiều: Để khai báo mảng một chiều ta cần xác định 3 yếu
tố :
+ Kiểu dữ liệu của mảng
+ Tên của mảng
+ Số lượng các phần tử (kích thước) của mảng
*Một số thao tác với mảng một chiều:
+ Khai báo:
• Khai báo khơng khởi tạo:
Cú pháp:
<Kiểu dữ liệu> [] <tên mảng>;
hoặc
<Kiểu dữ liệu> <Tên mảng> [];
hoặc
<Kiểu dữ liệu> <Tên mảng> [] = new <Kiểu dữ liệu> []
Ví dụ:
int [] a; // mảng số nguyên chưa biết số phần tử
int b []; // mảng số nguyên chưa biết số phần tử
String c [] = new String [7]; // mảng chứa 7 chuỗi
• Khai báo có khởi tạo:
Cú pháp:
<Kiểu dữ liệu> [] <Tên mảng> = {
, …};
Hoặc
<Kiểu dữ liệu> [] <Tên mảng> = new <Kiểu dữ liệu> []
{, …};
8
Tieu luan
Ví dụ:
double [] d= {5,6,7,8,9}; // mảng số thực, 5 phần tử đã được
khởi tạo.
int [] e= new int [] {10,11,13}; // mảng số nguyên, 3 phần tử
đã được khởi tạo.
+ Truy xuất (đọc, ghi) đến các phần tử của mảng:
Cú pháp:
<Tên mảng> [Chỉ số phần tử];
Ví dụ:
int [] arr= {2,4,6}; //khai báo mảng
System.out.println (“Phan tu thu 2 cua mang la: “+ arr[2]);
Kết quả trả về là:
Phan tu thu nhat cua mang la: 6
+ Lấy số phần tử của mảng:
Cú pháp:
Ví dụ:
<Tên mảng>. length ;
char KyTu [] = new char [] {‘T’, ‘H’, ‘U’}; // khai báo mảng
System.out.println (“So phan tu của mang KyTu la: “, +
KyTu.length); // Kết quả trả về: So phan tu của mang KyTu la: 3
+ Duyệt mảng: 2 vòng lặp thường được dùng để duyệt mảng là for và for- each
• Vịng lặp for-each:
Cú pháp: for ( <Kiểu dữ liệu> <Biến> : <Tên mảng> {//Khối lệnh thựcthi};
Ví dụ:
int So []=new int [] {2,5,6,7};
for (int x: So) {
System.out.println(""+ x);
}
9
Tieu luan
//
//
//
//
Kết quả trả về: 2
5
6
7
• Vịng lặp for:
Cú pháp:
for ( <Biến khởi tạo>; <Biểu thức điều kiện>;biến> {//Khối lệnh thực thi};
Ví dụ:
int So []=new int [] {2,5,6,7};
for (int i=0; iSystem.out.println(""+ So[i]);
}
//
Kết quả trả về: 2
//
5
//
6
//
7
* Một số phương thức xử lý mảng:
int a [] = {2,3,5,6,7,9}
Phương thức
<T> List <T> asList (T…a)
Mơ tả/Ví dụ
Chuyển một mảng sang List với kiểu
tương ứng
Ví dụ: List <Integer> b=
Arrays.asList(a);
int binarySearch (Object [] a, Object Tìm vị trí xuất hiện đầu tiên của một
key)
phần tử trong mảng
10
Tieu luan
Ví dụ: int i= Arrays.binarySearch (a,8);
Sắp xếp các phần tử theo thứ tự tăng
void sort (Object [] a)
dần
Ví dụ: Arrays.sort(a);
Chuyển mảng thành chuỗi và các phần
String toString (Object [] a)
tử cách nhau bởi dấu phẩy
Ví dụ: String s = Arrays.toString(a);
void fill (Object [] a, Object val)
Gán 1 giá trị cho tất cả các phần tử của
mảng
Ví dụ: Arrays.fill(a,2);
V. CÁC CHƯƠNG TRÌNH MẢNG 1 CHIỀU
Chương trình 1:
package bainhom;
public class groupMates {
static void welcome(String name) {
System.out.println("Hello, " + name);
}
public static void main(String[] args) {
String[] name = {"Thu Vo","Thu Ha","Phan Thu","Bao Nhien" };
for (int i = 0; i < 4; i++) {
welcome(name[i]) ;
}
}
}
11
Tieu luan
Chương trình 2:
package bainhom;
public class TenSanPham {
static void tensanpham(String ... names) {
int sotenSanpham = names.length;
System.out.println("So san pham: " + sotenSanpham);
for (String name : names) {
System.out.println(name);
}
}
public static void main(String[ ] args) {
tensanpham("Iphone 14 promax", "Samsung Galaxy Z Fold",
"Macbook Air");
}
}
12
Tieu luan
Chương trình 3:
package bainhom;
public class Mate {
public static void main(String[] args) {
// Tổng các số lẽ trong mảng
int arr[] = {2,3,4,5,6,7,8,9};
int sum=0;
for(int i =0;i<8;i++) {
if(arr[i]%2==1) {
sum+=arr[i];
}
}
System.out.println(sum);
System.out.println();
// In ra mảng đã nhập
float a[] = {4,5,6,8};
for (float i : a) {
System.out.println(i);
System.out.println();
}
// In 1 phần tử trong mảng
13
Tieu luan
String[] name = { "Thu Ha", "Thư Vo", "Phan Thu", "Bao
Nhien" };
System.out.println(name[0]);
}
}
Chương trình 4:
package bainhom;
import java.util.Arrays;
public class Assignment {
public static void main(String[] args) {
System.out.println("Chuong trinh xu ly mang mot chieu: ");
String SinhVien []= new String [] {"Thanh", "Binh", "Ngoc",
"Quang","An"};
Alphabetize(SinhVien);
int Numbers []= new int [] {23,12,9,5,3};
MinNum(Numbers);
Average(Numbers);
}
14
Tieu luan
public static void Alphabetize( String SinhVien []) {
for (int i=0; ifor (int j=i+1; jif (SinhVien[i].compareTo(SinhVien[j])>0){
String temp=SinhVien[i];
SinhVien[i]=SinhVien[j];
SinhVien[j]=temp;
}
}
}
System.out.println("Mang Sinh Vien sau khi sap xep la: "+
Arrays.toString(SinhVien));
}
public static void MinNum (int Numbers []) {
int min= Numbers[0];
for (int i=0; iif (Numbers[i]min=Numbers[i];
}
}
System.out.println("Gia tri nho nhat cua mang la: "+ min);
}
public static void Average (int Numbers []) {
int sum=0;
for (int i=0; isum=sum+Numbers[i];
}
System.out.println("Trung binh cong cac phan tu trong mang la: "+
(float)sum/Numbers.length);
}
}
15
Tieu luan
16
Tieu luan