本文整理汇总了Java中org.javarosa.core.util.externalizable.ExtUtil.arrayEquals方法的典型用法代码示例。如果您正苦于以下问题:Java ExtUtil.arrayEquals方法的具体用法?Java ExtUtil.arrayEquals怎么用?Java ExtUtil.arrayEquals使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.javarosa.core.util.externalizable.ExtUtil
的用法示例。
在下文中一共展示了ExtUtil.arrayEquals方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: equals
import org.javarosa.core.util.externalizable.ExtUtil; //导入方法依赖的package包/类
public boolean equals (Object o) {
if (o instanceof XPathFuncExpr) {
XPathFuncExpr x = (XPathFuncExpr)o;
//Shortcuts for very easily comprable values
//We also only return "True" for methods we expect to return the same thing. This is not good
//practice in Java, since o.equals(o) will return false. We should evaluate that differently.
//Dec 8, 2011 - Added "uuid", since we should never assume one uuid equals another
//May 6, 2013 - Added "random", since two calls asking for a random
//Jun 4, 2013 - Added "now" and "today", since these could change during the course of a survey
if(!id.equals(x.id) || args.length != x.args.length ||
id.toString().equals("uuid") ||
id.toString().equals("random") ||
id.toString().equals("once") ||
id.toString().equals("now") ||
id.toString().equals("today")) {
return false;
}
return ExtUtil.arrayEquals(args, x.args);
} else {
return false;
}
}
示例2: equals
import org.javarosa.core.util.externalizable.ExtUtil; //导入方法依赖的package包/类
public boolean equals (Object o) {
if (o instanceof XPathStep) {
XPathStep x = (XPathStep)o;
//shortcuts for faster evaluation
if(axis != x.axis || test != x.test || predicates.length != x.predicates.length) {
return false;
}
switch (test) {
case TEST_NAME: if(!name.equals(x.name)) {return false;} break;
case TEST_NAMESPACE_WILDCARD: if(!namespace.equals(x.namespace)) {return false;} break;
case TEST_TYPE_PROCESSING_INSTRUCTION: if(!ExtUtil.equals(literal, x.literal)) {return false;} break;
default: break;
}
return ExtUtil.arrayEquals(predicates, x.predicates);
} else {
return false;
}
}
示例3: matches
import org.javarosa.core.util.externalizable.ExtUtil; //导入方法依赖的package包/类
/**
* "matches" follows roughly the same process as equals(), in that it for a step it will
* check whether two steps share the same properties (multiplicity, test, axis, etc).
* The only difference is that match() will allow for a named step to match a step who's name
* is a wildcard.
*
* So
* \/path\/
* will "match"
* \/*\/
*
* even though they are not equal.
*
* Matching is reflexive, consistent, and symmetric, but _not_ transitive.
* @param xPathStep
* @return
*/
protected boolean matches(XPathStep o) {
if (o instanceof XPathStep) {
XPathStep x = (XPathStep)o;
//shortcuts for faster evaluation
if(axis != x.axis || (test != x.test && !((x.test == TEST_NAME && this.test == TEST_NAME_WILDCARD)||(this.test==TEST_NAME && x.test == TEST_NAME_WILDCARD))) || predicates.length != x.predicates.length) {
return false;
}
switch (test) {
case TEST_NAME: if(x.test != TEST_NAME_WILDCARD && !name.equals(x.name)) {return false;} break;
case TEST_NAMESPACE_WILDCARD: if(!namespace.equals(x.namespace)) {return false;} break;
case TEST_TYPE_PROCESSING_INSTRUCTION: if(!ExtUtil.equals(literal, x.literal)) {return false;} break;
default: break;
}
return ExtUtil.arrayEquals(predicates, x.predicates);
} else {
return false;
}
}
示例4: equals
import org.javarosa.core.util.externalizable.ExtUtil; //导入方法依赖的package包/类
public boolean equals (Object o) {
if (o instanceof XPathPathExpr) {
XPathPathExpr x = (XPathPathExpr)o;
//Shortcuts for easily comparable values
if(init_context != x.init_context || steps.length != x.steps.length) {
return false;
}
return ExtUtil.arrayEquals(steps, x.steps) && (init_context == INIT_CONTEXT_EXPR ? filtExpr.equals(x.filtExpr) : true);
} else {
return false;
}
}