
Bài tập Java cơ bản: nhập và so sánh biến kiểu string
Đề bài
Viết chương trình nhập vào tên của 2 người, bạn hãy kiểm tra xem tên của 2 người này có giống nhau không. Nếu có thì hiển thị ra:
two people have the same name
Ngược lại nếu tên của 2 người này không giống nhau thì hiển thị ra:
two people don't have the same name
Nếu bạn chưa làm được bài này thì có thể xem hướng dẫn ở bên dưới.
Lý thuyết
Trong Java bạn không nên sử dụng toán tử ==
để so sánh giá trị của kiểu dữ liệu String
, thay vào đó bạn nên sử dụng phương thức equals()
. Ví dụ:
import java.util.Scanner;
public class Statement {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = sc.nextLine();
String b = sc.nextLine();
if(a.equals(b)) {
System.out.println("A is equal to B");
}
if (a == b) {
System.out.println("A == B");
}
}
}
Nếu bạn nhập:
Tuan
Tuan
Thì màn hình sẽ hiển thị ra:
A is equal to B
Có thể thấy giá trị của hai xâu là giống nhau nhưng màn hình lại chỉ hiển thị ra A is equal to B
thay vì A == B
. Để hiểu được tại sao thì bạn cần hiểu được rõ về các kiểu dữ liệu nguyên thủy, lớp và đối tượng nhưng để đơn giản bạn hãy tạm nhớ nếu so sánh xâu thì nên sử dụng phương thức equals()
thay vì toán tử ==
.
Đọc tới đây bạn đã biết cách so sánh kiểu dữ liệu String
, hãy quay lại phần bài tập và làm thử.
Hướng dẫn
Code mẫu:
import java.util.Scanner;
public class Statement {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = sc.next();
String b = sc.next();
if (a.equals(b)) {
System.out.println("two people have the same name");
} else {
System.out.println("two people don't have the same name");
}
}
}
Post Comment