Apparently a colon is used in multiple ways in Java. Would anyone mind explaining what it does?
For instance here:
String cardString = "";
for (PlayingCard c : this.list) // <--
{
cardString += c + "\n";
}
How would you write this for-each
loop a different way so as to not incorporate the :
?
There are several places colon is used in Java code:
1) Jump-out label (Tutorial):
label: for (int i = 0; i < x; i++) {
for (int j = 0; j < i; j++) {
if (something(i, j)) break label; // jumps out of the i loop
}
}
// i.e. jumps to here
2) Ternary condition (Tutorial):
int a = (b < 4)? 7: 8; // if b < 4, set a to 7, else set a to 8
3) For-each loop (Tutorial):
String[] ss = {"hi", "there"}
for (String s: ss) {
print(s); // output "hi" , and "there" on the next iteration
}
4) Assertion (Guide):
int a = factorial(b);
assert a >= 0: "factorial may not be less than 0"; // throws an AssertionError with the message if the condition evaluates to false
5) Case in switch statement (Tutorial):
switch (type) {
case WHITESPACE:
case RETURN:
break;
case NUMBER:
print("got number: " + value);
break;
default:
print("syntax error");
}
6) Method references (Tutorial)
class Person {
public static int compareByAge(Person a, Person b) {
return a.birthday.compareTo(b.birthday);
}}
}
Arrays.sort(persons, Person::compareByAge);