【发布时间】:2018-05-02 23:54:54
【问题描述】:
我正在学习java并尝试编写以下方法。
比较两个char数组,如果数组b完全包含在数组a中。
这是我的代码。
public static boolean containsPattern(char[] chars ,char[] pattern) {
boolean tellMe= true;
for(int i=0;i<chars.length;i++) {
for(int j=0;j<pattern.length;j++) {
if(chars[i]==pattern[j]) {
for(int k=0;k<pattern.length;k++) {
if(chars[i]==pattern[k])
return tellMe;
}
} else
return tellMe = false;
}
}
return tellMe;
}
如果条件chars[i]==pattern[k] 对模式的所有元素都为真,我希望它返回真。但是返回值与第一个 true 不同。
我怎么写,如果所有chars[i]==pattern[k] 都为真,它就返回真?
最好的问候 蜕皮
【问题讨论】:
-
return tellMe=false不会做你认为的那样。你的意思可能是==。 -
如果一个不匹配,你可以扭转问题,那么它显然是错误的
-
这么明显的错误...谢谢大家
标签: java arrays methods return