- All Superinterfaces:
Tree
public interface CaseTree extends Tree
A tree node for a
case
in a switch
statement or expression.
For example:
case expression : statements default : statements
- See Java Language Specification:
-
14.11 The switch Statement
- Since:
- 1.6
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
CaseTree.CaseKind
The syntactic form of this case: STATEMENT:case <expression>: <statements>
RULE:case <expression> -> <expression>/<statement>
-
Method Summary
Modifier and Type Method Description default Tree
getBody()
For case with kind CaseTree.CaseKind.RULE, returns the statement or expression after the arrow.default CaseTree.CaseKind
getCaseKind()
Returns the kind of this case.ExpressionTree
getExpression()
Deprecated.Please usegetExpressions()
.List<? extends ExpressionTree>
getExpressions()
Returns the labels for this case.List<? extends StatementTree>
getStatements()
For case with kind CaseTree.CaseKind.STATEMENT, returns the statements labeled by the case.
-
Method Details
-
getExpression
Deprecated.Please usegetExpressions()
.Returns the expression for the case, ornull
if this is the default case. If this case has multiple labels, returns the first label.- Returns:
- the expression for the case, or null
-
getExpressions
List<? extends ExpressionTree> getExpressions()Returns the labels for this case. For default case, returns an empty list.- Returns:
- labels for this case
- Since:
- 12
-
getStatements
List<? extends StatementTree> getStatements()For case with kind CaseTree.CaseKind.STATEMENT, returns the statements labeled by the case. Returnsnull
for case with kind CaseTree.CaseKind.RULE.- Returns:
- the statements labeled by the case or null
-
getBody
For case with kind CaseTree.CaseKind.RULE, returns the statement or expression after the arrow. Returnsnull
for case with kind CaseTree.CaseKind.STATEMENT.- Returns:
- case value or null
- Since:
- 12
-
getCaseKind
Returns the kind of this case.- Returns:
- the kind of this case
- Since:
- 12
-