Vấn đề có thể gặp khi thao tác với String trong Java và Groovy
TIL
635
White

Tất Huân viết ngày 10/08/2018

Vấn đề có thể gặp khi thao tác với String trong Java và Groovy

Vấn đề 1: Toán tử "==" trong Groovy khác với Java

Cùng 1 ví dụ như sau:

String yourWife = new String("beautiful girl");
String myWife = new String("beautiful girl");

System.out.println(yourWife.equals(myWife));
System.out.println(yourWife == myWife); 

Java output:

true
false

Groovy output:

true
true

// Tất nhiên cách lưu trữ đối tượng và so sánh tham chiếu của Groovy không thay đổi, chỉ là Groovy dùng toán tử == như equals(). Nếu muốn so sánh tham chiếu trong Groovy, chúng ta có thể sử dụng function is(): object1.is(object2)

Vấn đề 2: So ánh GString và String trong Groovy

String name = "Dat"
String nickName = "Mr $name"

println nickName == "Mr Dat"
println nickName.equals("Mr Dat")

Output:

false
true

Tương tự khi bạn check 1 list String contains một phần tử GString

String myName = "Huan"
def names = ["Huan", "Hai"]
println names.contains("$myName")

Output:

false

Jack 10-07-2018

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Tất Huân

4 bài viết.
1 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
5 0
Sử dụng Jacksondatabind mapping Object Json và ứng dụng load file config 1. Mapping Object Json Jacksondatabind Maven: com.fasterxml.jackson.c...
Tất Huân viết 4 tháng trước
5 0
White
4 2
Một số hàm giúp mapping data đơn giản với Groovy Ví dụ với list data như sau: def student1 = name: "Huan", age: 22, gender: "male"] def student...
Tất Huân viết 4 tháng trước
4 2
White
3 2
Giảm "quay tay" trên Intellij Hôm nay mình xin chia sẻ với anh em cách định nghĩa các template tương tự như thằng psvm mà chúng ta vẫn dùng hằng n...
Tất Huân viết gần 2 năm trước
3 2
Bài viết liên quan
White
0 2
fCC: Technical Documentation Page note So I have finished the HTML part of this exercise and I want to come here to lament about the lengthy HTML ...
HungHayHo viết 5 tháng trước
0 2
White
20 1
Toán tử XOR có tính chất: + A XOR A = 0 + 0 XOR A = A Với tính chất này, có thể cài đặt bài toán sau với độ phức tạp O(N) về runtime, và với O(1)...
kiennt viết 2 năm trước
20 1
White
9 0
Có một tuyên ngôn cho chủ nghĩa tối giản trong ngành phần mềm. Link: http://minifesto.org/ Fight for Pareto's law, look for the 20% of effort th...
Cẩm Huỳnh viết 2 tháng trước
9 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
4 bài viết.
1 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!