Không có toán tử "dấu hai chấm", nhưng dấu hai chấm xuất hiện ở hai nơi:
1: Trong toán tử bậc ba, ví dụ:
int x = bigInt ? 10000 : 50;
Trong trường hợp này, toán tử bậc ba hoạt động như một 'if' cho các biểu thức. Nếu bigInt là true, thì x sẽ được gán 10000 cho nó. Nếu không, 50. Dấu hai chấm ở đây có nghĩa là "khác".
2: Trong vòng lặp for-each:
double[] vals = new double[100];
for (double x : vals) {
}
Điều này lần lượt đặt x thành từng giá trị trong 'vals'. Vì vậy, nếu vals chứa [10, 20.3, 30, ...], thì x sẽ là 10 ở lần lặp đầu tiên, 20.3 ở lần thứ hai, v.v.
Lưu ý: Tôi nói nó không phải là một toán tử vì nó chỉ là cú pháp. Nó không thể tự xuất hiện trong bất kỳ biểu thức đã cho nào và chỉ có thể là cả toán tử for-each và toán tử bậc ba đều sử dụng dấu hai chấm.