equals.java

来自「本书透彻讲解了经典的《设计模式:可复用面向对象软件的基础》一书涵盖的23种基本设」· Java 代码 · 共 47 行

JAVA
47
字号
package com.oozinoz.robot.interpreter;

import com.oozinoz.machine.*;

/*
 * Copyright (c) 2001 Steven J. Metsker.
 * 
 * Steve Metsker makes no representations or warranties about
 * the fitness of this software for any particular purpose, 
 * including the implied warranty of merchantability.
 *
 * Please use this software as you wish with the sole
 * restriction that you may not claim that you wrote it.
 */
/**
 * Represent a comparison of two terms.
 * 
 * @author Steven J. Metsker
 */
public class Equals extends Term 
{
	protected Term term1;
	protected Term term2;
/**
 * Construct a term that can compare the two provided terms.
 */
public Equals(Term term1, Term term2)
{
	this.term1 = term1;
	this.term2 = term2;
}
/**
 * Return null if this term's subterms evaluate to
 * different machines.
 *
 * @return null if this term's subterms evaluate to
 *         different machines. Otherwise return the
 *         machine.
 */
public Machine eval(Context c)
{
	Machine m1 = term1.eval(c);
	Machine m2 = term2.eval(c);
	boolean b = m1.toString().equals(m2.toString());
	return b ? m1 : null;
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?