Nội dung bài học

Cài đặt môi trường (cài đặt IntelliJ / Eclipse  IDE), kiểu dữ liệu, toán tử, function (hàm), variable (biến), object (đối tượng), class (lớp)

Cài đặt môi trường Java trên Window

Để làm việc với java bạn phải cài đặt môi trường cho nó, môi trường java bao gồm những gì? Phần này Anh Tester hướng dẫn bạn cài đặt môi trường cho java trên môi trường Windows. Còn trên môi trường Linux(Ubuntu) ở phía cuối của bài học.

Dưới đây là những gì cơ bản và cần thiết bạn cần phải cài đặt:

  • Cài đặt JDK (Java Development Kit)
  • Cấu hình biến môi trường.

Về cơ bản thì chỉ cần 2 bước trên là đủ để tạo ra và chạy một chương trình java đơn giản. Dưới đây là chi tiết cho các bước trên.


Cài đặt JDK (Java Development Kit)

JDK là gì? JDK (là viết tắt của Java Development Kit) là một bộ phát triển phần mềm để phát triển các ứng dụng trong Java. JDK bao gồm JRE và các Development Tool. Ngoài JRE, JDK cũng chứa số công cụ phát triển (trình biên dịch, JavaDoc, Java Debugger, ...) tham khảo tại sự khác nhau giữa JDK, JRE và JVM. Nên bạn chỉ cần tải JDK về là đủ.

Hiện nay có 2 phiên bản java được sử dụng phổ biến đó là JDK7 và JDK8, dưới đây là link download JDK8:


Note
: mới nhất là JDK 15 nhe

Sau khi tải JDK về, bạn cài đặt giống như cài đặt các phần mềm khác.


Cấu hình biến môi trường

Việc cấu hình biến môi trường bao gồm 2 việc sau:

  • Tạo biến JAVA_HOME
  • Sửa biến Path

Tạo biến JAVA_HOME

Click chuột phải vào biểu tượng MyComputer –> Properties-> Advanced system settings

Setup Java Window | Anh Tester

-> Environment Variables
Setup Java Window | Anh Tester

-> Click ‘New’ trong System Variables
Setup Java Window | Anh Tester

Nhập: Variable name = “JAVA_HOME” và Variable value = [java-path].
Setup Java Window | Anh Tester

 


Sửa biến Path

Click chuột phải vào biểu tượng MyComputer –> Properties -> Advanced system settings -> Environment Variables -> edit biến Path trong System Variables -> thêm [java-path]\bin vào biến Path -> OK -> OK -> OK

Ví dụ

Edit biến path trong System Variables

Setup Java Window | Anh Tester

Chọn New trong Edit environment variable
Setup Java Window | Anh Tester

Nhập giá trị sau vào cuối biến path:

%JAVA_HOME%\bin
 

Setup Java Window | Anh Tester

Click button OK -> OK -> OK.

Bạn cần phải restart (hoặc sign out) máy tính sau khi cài đặt biến môi trường.


2. Tạo chương trình java đầu tiên trên eclipse

Khi mới học java có khi nào bạn tự hỏi các doạn code java được viết vào đâu (editor nào)? biên dịch và chạy nó như nào? Bạn có thể tham khảo bài Hello World trong Java để biết cách tạo chương trình java bằng notepad và hiểu một chương trình java được biên địch như thế nào.

Nhưng sau đó bạn nên biết và sử dụng eclipse hoặc IntelliJ, vì chúng là 2 IDE phổ biến mạnh mẽ nhất được sử dụng trong việc lập trình java. Phần này Anh Tester hướng dẫn bạn cách tạo và chạy chương trình java đầu tiên trên Eclipse.

Tiếp theo là bạn cần phải tải về và cài đặt Eclipse.

Download Eclipse cho lập trình java

Bạn có thể tải xuống phiên bản mới nhất của Eclipse tại link sau:

Bạn nên tải phiên bản "Eclipse IDE for Java EE Developers" vì nó được tạo ra để dành cho phát triển ứng dụng java và ứng dụng java j2ee. Tải bản 32bit hay 64bit tùy thuộc vào hệ điều hành của bạn.

download_eclipse


 

Cài đặt Eclipse IDE

Theo như hướng dẫn tải ở trên Eclipse bạn tải về là phần mềm portable, nghĩa là bản tải về giải nến ra là có thể sử dụng luôn mà không phải cài đặt.

Để Eclipse IDE có thể hoạt động được thì trước hết bạn phải cài JDK trên máy tính của bạn như đã nói ở phần trên.

Sau khi tải về eclipse bạn giải nén ra và mở bằng cách double click vào file eclipse.exe.

Bạn phải chọn worksapce (nơi lưu các project mà bạn tạo ra bằng Eclipse - Folder) cho eclipse. Hoặc tích vào "Use this as the default and do not ask again" để chọn workspace đó là mặc định và không hiển thị hộp thoại cho lần mở Eclipse tiếp theo.

Download và cài đặt Eclipse IDE

Click button Launch, chúng ta thấy giao diện như sau:

Cài đặt Java - Anh Tester

Đóng tab "Welcome", chúng ta thấy giao diện như sau:

Download và cài đặt Eclipse IDE

Đến đây là bạn đã thành công trong việc download và cài đặt Eclipse IDE cho lập trình Java.


Tạo chương trình java đầu tiên trên eclipse

Dưới đây là các bước tạo chương trình java đầu tiên trên eclipse:

Chọn File -> New -> Other...
Nhập Wizards = "java project" để tìm kiếm nhanh:
Sau đó chọn "Java Project" -> Next:

Cài đặt môi trường java - tạo project trên eclipse 1

Nhập project name: "java-hello-world" -> Finish

Cài đặt môi trường java - tạo project trên eclipse 2

Click Yes tại dialog "Open Associated Perspective"

Cài đặt môi trường java - tạo project trên eclipse 3

Tạo package cho project: click chuột phải vào "src" -> New -> packpage

Cài đặt môi trường java - tạo project trên eclipse 4

Nhập package name = "vn.viettuts" -> Finish

Cài đặt môi trường java - tạo project trên eclipse 5

Click chuột phải vào packpage "vn.viettuts" -> New -> Class

Cài đặt môi trường java - tạo project trên eclipse 6

Nhập Name = "HelloWorld" -> Finish

Cài đặt môi trường java - tạo project trên eclipse 7

Eclipse tạo cho bạn lớp HelloWorld.java như sau:

Cài đặt môi trường java - tạo project trên eclipse 8

Viết hàm main cho lớp HelloWorld.java như sau:

Cài đặt môi trường java - tạo project trên eclipse 9


Chạy chương trình Java đầu tiên trên Eclipse

Sử dụng tổ hớp phím CTRL + F11 để chạy (run) chương trình java trên eclipse, với chương trình đã tạo ở trên chúng ta có kết quả như sau:

Cài đặt môi trường java - run project trên eclipse


Biến trong Java

Trong java, biến là tên của vùng nhớ. Có 3 kiểu biến trong java, bao gồm biến local (biến địa phương), biến instance (biến toàn cục) và biến static.

Các kiểu biến trong java


Khai báo biến trong java

Cú pháp khai báo biến:

DataType varName [ = value] [, varName2] [ = value2]...;

Trong đó, DataType là kiểu dữ liệu của biến, varName là tên biến.

Quy tắc đặt tên biến trong java:

  • Chỉ được bắt đầu bằng một ký tự(chữ), hoặc một dấu gạch dưới(_), hoặc một ký tự dollar($)
  • Tên biến không được chứa khoảng trắng
  • Bắt đầu từ ký tự thứ hai, có thể dùng ký tự(chữ), dấu gạch dưới(_), hoặc ký tự dollar($)
  • Không được trùng với các từ khóa
  • Có phân biệt chữ hoa và chữ thường

Ví dụ về khai báo biến trong java:


1. Biến local trong java

  • Biến local được khai báo trong các phương thức, hàm contructor hoặc trong các block.
  • Biến local được tạo bên trong các phương thức, contructor, block và sẽ bị phá hủy khi kết thúc các phương thức, contructor và block.
  • Không được sử dụng "access modifier" khi khai báo biến local.
  • Các biến local được lưu trên vùng nhớ stack của bộ nhớ.
  • Bạn cần khởi tạo giá trị mặc định cho biến local trước khi có thể sử dụng.

Ví dụ 1: Khởi tạo biến local:

package anhtester.bienvadulieu;
 
public class Bien {
     
    public void sayHello() {
        int n = 10;                     // Đây là biến local
        System.out.println("Gia tri cua n la: " + n);
    }
     
    public static void main(String[] args) {
        Bien bienLocal = new Bien();
        bienLocal.sayHello();
    }
}

Kết quả:

Gia tri cua n la: 10

Ví dụ 2: Không khởi tạo biến local:

public class Bien {
     
    public void sayHello() {
        int n;                 // Đây là biến local
        System.out.println("Gia tri cua n la: " + n);
    }
     
    public static void main(String[] args) {
        Bien bienLocal = new Bien();
        bienLocal.sayHello();
    }
}

Kết quả:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The local variable n may not have been initialized​
Khi không khởi tạo biến local, chương trình java sẽ báo lỗi khi biên dịch.


2. Biến instance (biến toàn cục) trong java

  • Biến instance được khai báo trong một lớp(class), bên ngoài các phương thức, constructor và các block.
  • Biến instance được lưu trong bộ nhớ heap.
  • Biến instance được tạo khi một đối tượng được tạo bằng việc sử dụng từ khóa “new” và sẽ bị phá hủy khi đối tượng bị phá hủy.
  • Biến instance có thể được sử dụng bởi các phương thức, constructor, block, ... Nhưng nó phải được sử dụng thông qua một đối tượng cụ thể.
  • Bạn được phép sử dụng "access modifier" khi khai báo biến instance, mặc định là "default".
  • Biến instance có giá trị mặc định phụ thuộc vào kiểu dữ liệu của nó. Ví dụ nếu là kiểu int, short, byte thì giá trị mặc định là 0, kiểu double thì là 0.0d, ... Vì vậy, bạn sẽ không cần khởi tạo giá trị cho biến instance trước khi sử dụng.
  • Bên trong class mà bạn khai báo biến instance, bạn có thể gọi nó trực tiếp bằng tên khi sử dụng ở khắp nới bên trong class đó.

Ví dụ về biến instance trong java:

package anhtester.bienvadulieu;
 
public class Sinhvien {
    // biến instance "ten" kiểu String, có giá trị mặc định là null
    public String ten;
 
    // biến instance "tuoi" kiểu Integer, có giá trị mặc định là 0
    private int tuoi;
 
    // sử dụng biến ten trong một constructor
    public Sinhvien(String ten) {
        this.ten = ten;
    }
 
    // sử dụng biến tuoi trong phương thức setTuoi
    public void setTuoi(int tuoi) {
        this.tuoi = tuoi;
    }
 
    public void showStudent() {
        System.out.println("Ten  : " + ten);
        System.out.println("Tuoi : " + tuoi);
    }
 
    public static void main(String args[]) {
        Sinhvien sv = new Sinhvien("Nguyen Van A");
        sv.setTuoi(21);
        sv.showStudent();
    }
}

Kết quả:

Ten : Nguyen Van A
Tuoi : 21

3. Biến static trong java

  • Biến static được khai báo trong một class với từ khóa "static", phía bên ngoài các phương thức, constructor và block.
  • Sẽ chỉ có duy nhất một bản sao của các biến static được tạo ra, dù bạn tạo bao nhiêu đối tượng từ lớp tương ứng.
  • Biến static được lưu trữ trong bộ nhớ static riêng.
  • Biến static được tạo khi chương trình bắt đầu chạy và chỉ bị phá hủy khi chương trình dừng.
  • Giá trị mặc định của biến static phụ thuộc vào kiểu dữ liệu bạn khai báo tương tự biến instance.
  • Biến static được truy cập thông qua tên của class chứa nó, với cú pháp: TenClass.tenBien.
  • Trong class, các phương thức sử dụng biến static bằng cách gọi tên của nó khi phương thức đó cũng được khai báo với từ khóa "static".

Ví dụ về biến static trong java:

package anhtester.bienvadulieu;
 
public class Sinhvien {
    // biến static 'ten'
    public static String ten = "Nguyen Van A";
     
    // biến static 'tuoi'
    public static int tuoi = 21;
 
    public static void main(String args[]) {
        // Sử dụng biến static bằng cách gọi trực tiếp
        System.out.println("Ten : " + ten);
 
        // Sử dụng biến static bằng cách gọi thông qua tên class
        System.out.println("Ten : " + Sinhvien.tuoi);
    }
}

Kết quả:

Ten : Nguyen Van A
Ten : 21

 



Các kiểu dữ liệu trong java

Trong Java, các kiểu dữ liệu được chia thành hai loại:

  • Các kiểu dữ liệu nguyên thủy
  • Các kiểu dữ liệu đối tượng


1. Kiễu dữ liệu nguyên thủy

Java cung cấp các kiểu dữ liệu cơ bản như sau:

Kiểu dữ liệu Mô tả
byte Dùng để lưu dữ liệu kiểu số nguyên có kích thước một byte (8 bít). Phạm vi biểu diễn giá trị từ -128 đến 127. Giá trị mặc định là 0.
char Dùng để lưu dữ liệu kiểu kí tự hoặc số nguyên không âm có kích thước 2 byte (16 bít). Phạm vi biểu diễn giá trị từ 0 đến u\ffff. Giá trị mặc định là 0.
boolean Dùng để lưu dữ liệu chỉ có hai trạng thái đúng hoặc sai (độ lớn chỉ có 1 bít). Phạm vi biểu diễn giá trị là {“True”, “False”}. Giá trị mặc định là False.
short Dùng để lưu dữ liệu có kiểu số nguyên, kích cỡ 2 byte (16 bít). Phạm vi biểu diễn giá trị từ - 32768 đến 32767. Giá trị mặc định là 0.
int Dùng để lưu dữ liệu có kiểu số nguyên, kích cỡ 4 byte (32 bít). Phạm vi biểu diễn giá trị từ -2,147,483,648 đến 2,147,483,647. Giá trị mặc định là 0.
long Dùng để lưu dữ liệu có kiểu số nguyên có kích thước lên đến 8 byte. Giá trị mặc định là 0L.
float Dùng để lưu dữ liệu có kiểu số thực, kích cỡ 4 byte (32 bít). Giá trị mặc định là 0.0F.
double Dùng để lưu dữ liệu có kiểu số thực có kích thước lên đến 8 byte. Giá trị mặc định là 0.00D


2. Kiểu dữ liệu đối tượng

Trong Java có 3 kiểu dữ liệu đối tượng:

Kiểu dữ liệu Mô tả
Array Một mảng của các dữ liệu cùng kiểu.
class Dữ liệu kiểu lớp đối tượng do người dùng định nghĩa. Chứa tập các thuộc tính và phương thức..
interface Dữ liệu kiểu lớp giao tiếp do người dùng định nghĩa. Chứa các phương thức của giao tiếp.




Toán tử trong Java

Toán tử trong java là một ký hiệu được sử dụng để thực hiện một phép tính/chức năng nào đó. Java cung cấp các dạng toán tử sau:

  • Toán tử số học
  • Toán tử bit
  • Toán tử quan hệ
  • Toán tử logic
  • Toán tử điều kiện
  • Toán tử gán
Toán tử trong java

Nội dung chính:
  • Toán tử số học
  • Toán tử Bit
  • Các toán tử quan hệ
  • Các toán tử logic
  • Các toán tử điều kiện
  • Toán tử gán
  • Thứ tụ ưu tiên của các toán tử
  • Thay đổi thứ tự ưu tiên của các toán tử

 

Toán tử số học

Các toán hạng của các toán tử số học phải ở dạng số. Các toán hạng kiểu boolean không sử dụng được, các toán hạng ký tự cho phép sử dụng loại toán tử này. Một vài kiểu toán tử được liệt kê trong bảng dưới đây.

Giả sử chúng ta có biến số nguyên a = 10 và b = 20.

Toán tử Mô tả Ví dụ
+ Cộng
Trả về giá trị là tổng của hai toán hạng
a + b sẽ là 30
- Trừ
Trả về kết quả là hiệu của hai toán hạng.
a - b sẽ là -10
* Nhân
Trả về giá trị là tích của hai toán hạng.
a * b sẽ là 200
/ Chia
Trả về giá trị là thương của phép chia.
b / a sẽ là 2
% Phép lấy modul
Giá trị trả về là phần dư của phép chia
b % a sẽ là 0
++ Tăng dần
Tăng giá trị của biến lên 1. Ví dụ a++ tương đương với a = a + 1
a++ sẽ là 11
-- Giảm dần
Giảm giá trị của biến 1 đơn vị. Ví dụ a-- tương đương với a = a - 1
a-- sẽ là 9
+= Cộng và gán giá trị
Cộng các giá trị của toán hạng bên trái vào toán hạng bên phải và gán giá trị trả về vào toán hạng bên trái. Ví dụ c += a tương đương c = c + a
a += 2 sẽ là 12
-= rừ và gán giá trị
Trừ các giá trị của toán hạng bên trái vào toán toán hạng bên phải và gán giá trị trả về vào toán hạng bên trái. Ví dụ c -= a tương đương với c = c - a
a -= 2 sẽ là 8
*= Nhân và gán
Nhân các giá trị của toán hạng bên trái với toán toán hạng bên phải và gán giá trị trả về vào toán hạng bên trái. Ví dụ c *= a tương đương với c = c*a
a *= 2 sẽ là 20
/= Chia và gán
Chia giá trị của toán hạng bên trái cho toán toán hạng bên phải và gán giá trị trả về vào toán hạng bên trái. Ví dụ c /= a tương đương với c = c/a
a /= 2 sẽ là 5
%= Lấy số dư và gán
Chia giá trị của toán hạng bên trái cho toán toán hạng bên phải và gán giá trị số dư vào toán hạng bên trái. Ví dụ c %= a tương đương với c = c%a
a /= 8 sẽ là 2


Toán tử Bit

Các toán tử dạng bit cho phép chúng ta thao tác trên từng bit riêng biệt trong các kiểu dữ liệu nguyên thuỷ.

Toán tử Mô tả
~ Phủ định NOT
Trả về giá trị phủ định của một bít.
& Toán tử AND
Trả về giá trị là 1 nếu các toán hạng là 1 và 0 trong các trường hợp khác
| Toán tử OR
Trả về giá trị là 1 nếu một trong các toán hạng là 1 và 0 trong các trường hợp khác.
^ Toán tử Exclusive OR
Trả về giá trị là 1 nếu chỉ một trong các toán hạng là 1 và trả về 0 trong các trường hợp khác.
>> Dịch phải
Chuyển toàn bộ các bít cuả một số sang phải một vị trí, giữ nguyên dấu của số âm. Toán hạng bên trái là số bị dịch còn số bên phải chỉ số vị trí mà các bít cần dịch.
<< Dịch trái
Chuyển toàn bộ các bít cuả một số sang trái một vị trí, giữ nguyên dấu cuả số âm. Toán hạng bên trái là số bị dịch còn số bên phải chỉ số vị trí mà các bít cần dịch.


Các toán tử quan hệ

Các toán tử quan hệ được sử dụng kiểm tra mối quan hệ giữa hai toán hạng. Kết quả của một biểu thức có dùng các toán tử quan hệ là những giá trị Boolean (logic “true” hoặc “false”). Các toán tử quan hệ được sử dụng trong các cấu trúc điều khiển.

Toán tử Mô tả
== So sánh bằng
Toán tử này kiểm tra sự tương đương của hai toán hạng
!= So sánh khác
Toán tử này kiểm tra sự khác nhau của hai toán hạng
> Lớn hơn
Kiểm tra giá trị của toán hạng bên phải lớn hơn toán hạng bên trái hay không
< Nhỏ hơn
Kiểm tra giá trị của toán hạng bên phải có nhỏ hơn toán hạng bên trái hay không
>= Lớn hơn hoặc bằng
Kiểm tra giá trị của toán hạng bên phải có lớn hơn hoặc bằng toán hạng bên trái hay không
<= Nhỏ hơn hoặc bằng
Kiểm tra giá trị của toán hạng bên phải có nhỏ hơn hoặc bằng toán hạng bên trái hay không

Các toán tử logic

Các toán tử logic làm việc với các toán hạng Boolean. Các toán tử quan hệ được sử dụng trong các cấu trúc điều khiển.

Toán tử Mô tả
&& Toán tử và (AND)
Trả về một giá trị “Đúng” (True) nếu chỉ khi cả hai toán tử có giá trị “True”
|| Toán tử hoặc (OR)
Trả về giá trị “True” nếu ít nhất một giá trị là True
^ Toán tử XOR
Trả về giá trị True nếu và chỉ nếu chỉ một trong các giá trị là True, các trường hợp còn lại cho giá trị False (sai)
! Toán tử phủ định (NOT)
Toán hạng đơn tử NOT. Chuyển giá trị từ True sang False và ngược lại.


Các toán tử điều kiện

Toán tử điều kiện là một loại toán tử đặc biệt vì nó bao gồm ba thành phần cấu thành biểu thức điều kiện. Cú pháp:

<biểu thức 1>   ?   <biểu thức 2>   :   <biểu thức 3>;​
  • biểu thức 1: Biểu thức logic. Trả trả về giá trị True hoặc False
  • biểu thức 2: Là giá trị trả về nếu <biểu thức="" 1="">xác định là True</biểu>
  • biểu thức 3: Là giá trị trả về nếu <biểu thức="" 1="">xác định là False</biểu>


Ví dụ:

public class Test {
    public static void main(String[] args) {
        int a = 20;
        int b = 3;
 
        String s = (a % b == 0) ? "a chia het cho b" : "a khong chia het cho b";
        System.out.println(s);
    }
}​

Kết quả:

a khong chia het cho b

Toán tử gán

Toán tử gán (=) dùng để gán một giá trị vào một biến và có thể gán nhiều giá trị cho nhiều biến cùng một lúc.

Ví dụ:

int var = 20;
int p,q,r,s; 
p=q=r=s=var;

Trong ví dụ trên, đoạn lệnh sau gán một giá trị cho biến var và giá trị này lại được gán cho nhiều biến trên một dòng lệnh đơn.

Dòng lệnh cuối cùng được thực hiện từ phải qua trái. Đầu tiên giá trị ở biến var được gán cho ‘s’, sau đó giá trị của ‘s’ được gán cho ‘r’ và cứ tiếp như vậy.


Thứ tụ ưu tiên của các toán tử

Thứ tự ưu tiên quyết định trật tự thực hiện các toán tử trên các biểu thức. Bảng dưới đây liệt kê thứ tự thực hiện các toán tử trong Java

Toán tử Mô tả
1 Các toán tử đơn như +,-,++,--
2 Các toán tử số học và các toán tử dịch như *,/,+,-,<<,>>
3 Các toán tử quan hệ như >,<,>=,<=,= =,!=
4 Các toán tử logic và Bit như &&,||,&,|,^
5 Các toán tử gán như =,*=,/=,+=,-=


Thay đổi thứ tự ưu tiên của các toán tử

Để thay đổi thứ tự ưu tiên trên một biểu thức, bạn có thể sử dụng dấu ngoặc đơn ():

  • Phần được giới hạn trong ngoặc đơn được thực hiện trước.
  • Nếu dùng nhiều ngoặc đơn lồng nhau thì toán tử nằm trong ngoặc đơn phía trong sẽ thực thi trước, sau đó đến các vòng phía ngoài.
  • Trong phạm vi một cặp ngoặc đơn thì quy tắc thứ tự ưu tiên vẫn giữ nguyên tác dụng.


Ví dụ:

public class Test {
    public static void main(String[] args) {
        int a = 20;
        int b = 5;
        int c = 10;
 
        System.out.println("a + b * c   = " + (a + b * c));
        System.out.println("(a + b) * c = " + ((a + b) * c));
        System.out.println("a / b - c   = " + (a / b - c));
        System.out.println("a / (b - c) = " + (a / (b - c)));
    }
}

Kết quả:

a + b * c   = 70
(a + b) * c = 250
a / b - c   = -6
a / (b - c) = -4

 



Mệnh đề if-else trong java

Mệnh đề if trong java được sử dụng để kiểm tra giá trị dạng boolean của điều kiện. Mệnh đề này trả về giá trị True hoặc False . Có các kiểu của mệnh đề if-else trong java như sau:

  • Mệnh đề if
  • Mệnh đề if-else
  • Mệnh đề if-else-if


Mệnh đề if

Mệnh đề if được sử dụng để kiểm tra giá trị dạng boolean của điều kiện. Khối lệnh sau if được thực thi nếu giá trị của điều kiện là True

Cú pháp:

if (condition) {  
    // khối lệnh này thực thi 
    // nếu condition = true
}  

IF Else - Anh Tester


Ví dụ:

public class Test {
    public static void main(String[] args) {
        int age = 20;
        if (age > 18) {
            System.out.print("Tuổi lớn hơn 18");
        }
    }
}

Kết quả:

Tuổi lớn hơn 18


Mệnh đề if-else

Mệnh đề if-else cũng kiểm tra giá trị dạng boolean của điều kiện. Nếu giá trị điều kiện là True thì chỉ có khối lệnh sau if sẽ được thực hiện, nếu là False thì chỉ có khối lệnh sau else được thực hiện.

Cú pháp:

if (condition) {
    // khối lệnh này được thực thi
    // nếu condition = true
} else {
    // khối lệnh này được thực thi
    // nếu condition = false
}

Ví dụ:

public class Test {
    public static void main(String[] args) {
        int number = 13;
        if (number % 2 == 0) {
            System.out.println("Số " + number + " là số chẵn.");
        } else {
            System.out.println("Số " + number + " là số lẻ.");
        }
    }
}

Kết quả:

Số 13 là số lẻ.


Mệnh đề if-else-if

Mệnh đề if-else-if cũng kiểm tra giá trị dạng boolean của điều kiện. Nếu giá trị điều kiện if là True thì chỉ có khối lệnh sau if sẽ được thực hiện. Nếu giá trị điều kiện if else nào là True thì chỉ có khối lệnh sau else if đó sẽ được thực hiện… Nếu tất cả điều kiện của if và else if là False thì chỉ có khối lệnh sau else sẽ được thực hiện.

Cú pháp:

if (condition1) {  
    // khối lệnh này được thực thi 
    // nếu condition1 là true  
} else if (condition2) {  
    // khối lệnh này được thực thi 
    // nếu condition2 là true  
}  else if (condition3) {  
    // khối lệnh này được thực thi 
    // nếu condition3 là true  
}  
...  
else {  
    // khối lệnh này được thực thi 
    // nếu tất cả những điều kiện trên là false                 
}

Ví dụ:

public class Test {
    public static void main(String[] args) {
        int marks = 65;
 
        if (marks < 50) {
            System.out.println("Tạch!");
        } else if (marks >= 50 && marks < 60) {
            System.out.println("Xếp loại D");
        } else if (marks >= 60 && marks < 70) {
            System.out.println("Xếp loại C");
        } else if (marks >= 70 && marks < 80) {
            System.out.println("Xếp loại B");
        } else if (marks >= 80 && marks < 90) {
            System.out.println("Xếp loại A");
        } else if (marks >= 90 && marks < 100) {
            System.out.println("Xếp loại A+");
        } else {
            System.out.println("Giá trị không hợp lệ!");
        }
    }
}

Kết quả:

Xếp loại C

 



Vòng lặp for trong java

Vòng lặp for trong java được sử dụng để lặp một phần của chương trình nhiều lần. Nếu số lần lặp là cố định thì vong lặp for được khuyến khích sử dụng, còn nếu số lần lặp không cố định thì nên sử dụng vòng lặp while hoặc do while.

Có 3 kiểu của vòng lặp for trong java:

  • Vòng lặp for đơn giản
  • Vòng lặp for cải tiến
  • Vòng lặp for gán nhãn


Vòng lặp for đơn giản

Vòng lặp for đơn giản giống như trong C/C++. Chúng ta có thể khởi tạo biến, kiểm tra điều kiện và tăng/giảm giá trị của biến.

Cú pháp:

for (khoi_tao_bien ; check_dieu_kien ; tang/giam_bien) {  
    // Khối lệnh được thực thi
}

Vòng lặp For - Anh Tester

Ví dụ:

public class ForExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            System.out.println(i);
        }
    }
}

Kết quả:

1
2
3
4
5
6
7
8
9
10


Vòng lặp for cải tiến

Vòng lặp for cải tiến được sử dụng để lặp mảng(array) hoặc collection trong java. Bạn có thể sử dụng nó dễ dàng, dễ hơn cả vòng lặp for đơn giản. Bởi vì bạn không cần phải tăng hay giảm giá trị của biến rồi check điều kiện, bạn chỉ cần sử dụng ký hiệu hai chấm “:”

Cú pháp:

for (Type var : array) {  
    // Khối lệnh được thực thi
}

Ví dụ:

public class ForEachExample {
    public static void main(String[] args) {
        int arr[] = { 12, 23, 44, 56, 78 };
        for (int i : arr) {
            System.out.println(i);
        }
    }
}

Kết quả:

12
23
44
56
78




Mảng (Array) trong Java

Thông thường, mảng (array) là một tập hợp các phần tử có cùng kiểu được lưu trữ gần nhau trong bộ nhớ.

Mảng trong java là một đối tượng chứa các phần tử có kiểu dữ liệu giống nhau. Mảng là một cấu trúc dữ liệu nơi lưu trữ các phần tử giống nhau. Với mảng trong java chúng ta chỉ có thể lưu trữ một tập các phần tử có số lượng phần tử cố định.

Mảng trong java lưu các phần tử theo chỉ số, chỉ số của phần tử đầu tiên là 0.

Array - Anh Tester

Lợi ích của mảng trong java

  • Tối ưu code: Mảng giúp lấy hoặc sắp xếp dữ liệu dễ dàng.
  • Truy cập ngẫu nhiên: Chúng ta có thể lấy dữ liệu được lưu trữ ở bất kỳ vị trí nào thông qua chỉ số.

Sự bất tiện của mảng trong java

  • Giới hạn kích thước: Chúng ta phải khởi tạo kích thước của mảng trong java trước khi sử dụng. Không thể thay đổi được kích thước của nó lúc runtime. Collection framework được sử dụng trong java để giải quyết vấn đề này.

Các kiểu của mảng trong java

Có hai kiểu mảng trong java

  • Mảng một chiều
  • Mảng đa chiều


Mảng một chiều trong java

Các cách khai báo mảng một chiều trong java

dataType[] arr;
dataType []arr; 
dataType arr[];  


Khởi tạo mảng một chiều trong java

datatype <tên mảng>[] = new datatype[size];


Ví dụ về mảng một chiều trong java

Ví dụ đơn giản về khai báo, khởi tạo và duyệt các phần tử của mảng.

public class TestArray {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// khai báo và khởi tạo mảng
		int a[] = new int[3];
		a[0] = 10; // gán giá trị
		a[1] = 20;
		a[2] = 50;

		// in mảng ra màn hình
		for (int i = 0; i < a.length; i++) {
			System.out.print(a[i] + " ");
		}
	}

}

Kết quả:

10 20 50


Khai báo, khởi tạo mảng một chiều bằng mảng nặc danh

Ví dụ:

public class TestArray1 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// gán mảng nặc danh cho mảng a
		int a[] = { 33, 3, 4, 5 };

		// in mảng a ra màn hình
		for (int i = 0; i < a.length; i++)
			System.out.print(a[i] + " ");
	}

}

Kết quả:

33 3 4 5


Truyền mảng vào phương thức trong java

Chúng ta có thể truyền mảng vào phương thức, điều này giúp tái sử dụng code logic để xử lý mảng bất kỳ. Ví dụ:

public class TestArray2 {

	static void min(int arr[]) {
        int min = arr[0];
        for (int i = 1; i < arr.length; i++)
            if (min > arr[i]) {
                min = arr[i];
            }
        System.out.println(min);
    }
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int a[] = { 33, 3, 4, 5 };
        min(a);// truyền mảng tới phương thức
	}

}

Kết quả:

3


Video phần 2:


==> Link Java Basic phần 2

Video phần 3:


==> Link Java Basic phần 3


Cộng đồng Automation Testing Việt Nam:


🌱 Zalo
Automation Testing:   https://zalo.me/g/lsxswc560
🌱 Facebook Group: Cộng đồng Automation Testing Việt Nam (Website, Desktop, Mobile)
🌱 Facebook Fanpage: Cộng đồng Automation Testing Việt Nam - Selenium

About the author

  • Anh Tester

    Đường dẫu khó chân vẫn cần bước đi
    Đời dẫu khổ tâm vẫn cần nghĩ thấu



Cộng đồng Automation Testing Việt Nam:


🌱 Zalo
Automation Testing:   https://zalo.me/g/lsxswc560
🌱 Facebook Group: Cộng đồng Automation Testing Việt Nam (Website, Desktop, Mobile)
🌱 Facebook Fanpage: Cộng đồng Automation Testing Việt Nam - Selenium

Chia sẻ kiến thức lên trang

Bạn có thể đăng bài để chia sẻ kiến thức, bài viết của chính bạn lên trang Anh Tester Blog

Danh sách bài học