问题
I can't understand why.
In the expression if (a++ > 0) {...} a++ can't be a Statement but since a++ is a CtUnaryOperator then it's also a CtStatement.
How can I differentiate between a++; and i = a++; since in both cases a++ will be a CtStatement?
回答1:
to differentiate between both, one looks at the parent. One class encapsulates this logic:
// does element act as a statement?
boolean hasStatementRole = new LineFilter().matches(element)
回答2:
Since the issues in this questions comes from design decisions in the Spoon tool, it can't be answered properly.
来源:https://stackoverflow.com/questions/41732525/ctunaryoperator-extends-ctstatement