Mình tìm dc một đoạn code trong đó có 1 dòng ghi thế này mà mình không hỉu dc nghĩa của nó bác nào dịch dc chỉ dùm
int id = (listStudents.size() > 0) ? (listStudents.size() + 1) : 1;
Mình tìm dc một đoạn code trong đó có 1 dòng ghi thế này mà mình không hỉu dc nghĩa của nó bác nào dịch dc chỉ dùm
int id = (listStudents.size() > 0) ? (listStudents.size() + 1) : 1;
Ternary operator. Cú pháp java cơ bản
Mà size()
có bao giờ ra âm đâu nhỉ
Nhưng có thể ra 0 mà.
int id;
if(listStudents.size() > 0)
id = listStudents.size() + 1;
else
id = 1;
Chỉ đơn giản là chuyển nền-0 (base-0) về nền-1 thôi.
int id = listStudents.size() + 1;
cũng có khác gì đâu 0 + 1 cũng bằng 1 mà. Nên đoạn code viết ra để CPU mua thêm việc
Hoặc ông nào rảnh override method size()
=]]
vậy : 1 là ý gi vây ?
Đó là toán tử ba ngôi, đọc thêm ở đây.
a = b ? c : d;
Nghĩa là a
sẽ bằng c
nếu b
có giá trị true, nếu b
false thì a
sẽ bằng d
.
giống vầy hả ???
if (a > b) {
result = x;
}
else {
result = y;
}
This can be rewritten as the following statement:
result = a > b ? x : y;
Sao bạn không tự thử đi, đọc tài liệu thêm đi là tự có câu trả lời thôi.
Ps: câu trả lời cho bạn là “đúng, giống hệt nhau”
Sau khi mày mò chạy thử thì mới hìu tại sau nó lại là listStudents.size() + 1 .Thì ra lúc nhập thằng id vào thì trên bảng nó lại hiên ra id là 1 thay vì là id mình nhập cái tiếp theo id =2 v…v.v thay vì là id =234 .Cho nên dòng này in ra thứ tự của danh sách hơn là id cho nên lẻ ra nó phải nằm ở cột thứ tự mới đúng .