- 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 classCaseTree.CaseKindThe syntatic form of this case: STATEMENT:case <expression>: <statements>RULE:case <expression> -> <expression>/<statement> -
Method Summary
Modifier and Type Method Description default TreegetBody()For case with kind CaseTree.CaseKind.RULE, returns the statement or expression after the arrow.default CaseTree.CaseKindgetCaseKind()Returns the kind of this case.ExpressionTreegetExpression()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, ornullif 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. Returnsnullfor 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. Returnsnullfor 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
-