aboutsummaryrefslogtreecommitdiff
path: root/test/pretty/resource/after/Switch17.java
blob: 038f2cd922fe536d4c24a3f30597af11d2db8bef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public class Switch17 {
	String switchPatternMatching(Object o) {
		return switch (o) {
			case Integer i -> String.format("int %d", i);
			case Long l -> String.format("long %d", l);
			case Double d -> String.format("double %f", d);
			case String s -> String.format("String %s", s);
			default -> o.toString();
		};
	}

	String switchNull(Object o) {
		return switch (o) {
			case null, default -> "?";
		};
	}

	String switchGuardPattern(Object o) {
		return switch (o) {
			case String s && s.length() > 1 -> s;
			default -> o.toString();
		};
	}

	String switchParenthesizedPattern(Object o) {
		return switch (o) {
			case (String s) -> s;
			default -> o.toString();
		};
	}
}