📄 selection.java
字号:
public class Selection extends Statement { private Expression condition; private Statement ifStatement, elseStatement; public Selection(Expression c, Statement ts, Statement fs) { condition = (Expression)c.clone(); ifStatement = (Statement)ts.clone(); elseStatement = (Statement)fs.clone(); } public void run() throws ExecutionException { if (condition.eval() == 1) ifStatement.run(); else elseStatement.run(); } public Object clone() { return new Selection(condition, ifStatement, elseStatement); } /* --------------------------------------- * condition * jzero li * ifstatement * jump lj * li:elsestatement * lj:... * @see java.lang.Object#toString() */ public String toString() { String result = condition.toString(); int truelabel = ++labels, falselabel = ++labels; result += labelling()+"JZERO L"+falselabel+"\n"+ifStatement.toString()+labelling()+"JUMP L"+truelabel+"\n"; toLabel = falselabel; result += elseStatement.toString(); toLabel = truelabel; return result; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -