CtUnaryOperator extends CtStatement
问题 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