【发布时间】:2016-03-08 01:04:47
【问题描述】:
这是一个项目程序,我有一段时间无法解决这个问题,希望有人能指出我缺少的代码问题。此代码的目标是比较两组数组( A 和 B )并创建第三个数组,该数组仅包含仅出现在 B 中的条目。 我的方法是初始化第三个数组并用“”填充每个条目。从那里比较两个给定的数组,如果 B 中的条目没有出现在 A 中,则将该条目添加到第三个数组中。但是,当我测试我所写的内容时,数组 B 完全按原样复制到第三个数组中,没有删除任何条目。 这是我的代码。 通过用我那微不足道的人脑查看代码,我觉得这应该可以工作,但事实并非如此。 如果字符串 A 包含“计算机” 并且字符串 B 包含“计算机”、“是”、“你” 字符串 C 应该是 "are", "you" 然而运行这段代码,字符串 C 是 "computer", "are", "you"
public static String [] findPatternInSentence( String [] A, String [] B) {
if (A== null){
return null;
}
String[] C= new String[A.length+1];
for (int p = 0; p < A.length+1; p++){
C[p]= "";
}
for( int i = 0; i< B.length; i++){
int k = Eliza.inList(A[0], B);
if(k > -1){
int j = 0;
if(A[j].equals(B[i]) && j < A.length-1){
j++;
}
else {
C[j] = C[j] + " " + B[i];
}
}
if (k == -1)
{
return null;
}
}
return C;
}
【问题讨论】:
-
你检查我的答案了吗?如果它没有帮助,我会删除它
标签: java arrays nested-loops string-comparison