2014-11-05 75 views
2

所以,我想从字符串比较字符串比较串来串元素的数组

String [] string = new String [10]; 
string [1] = "pencil"; 
string [2] = "pen"; 
string [3] = "eraser"; 

的数组如何比较字符串,字符串从上面的阵列?

+0

你的意思是 “比较的String []与多个字符串”? – Adheep 2014-11-05 10:18:18

+0

如果您详细说明我可能会帮助您,您的问题不清楚,并且非常通用。 – Adheep 2014-11-05 10:20:38

+0

它怎么可能是**单**和**多**字符串? – 2014-11-05 10:24:56

回答

2

更快的方法是使用此代码

if(Arrays.asList(string).contains(search_string)) 
+0

谢谢,它按我的意愿做,需要编辑一些更多的代码。 – xdhe 2014-11-05 13:40:56

1

如果我理解正确,写一个循环,其中迭代多个字符串(示例数组)和等于src字符串。

String [] string = new String [10]; 
... 
String src = ..;//src string 

for(String string : string){ 
    if(src.equals(string)){ 
     //Equal 
    } 
} 
+0

我已经用了,它没有按我的计划工作。 – xdhe 2014-11-05 10:15:31

+1

什么是秘密计划? – 2014-11-05 10:16:12

+0

当我比较字符串时,应该从所有多个列表进行比较,而不是具体的比较。 – xdhe 2014-11-05 10:19:39

0

尝试使用这样的:

for (int i = 0; i < string.length; i++) { 
    if (ch.equals(string[i])) { // ch is the string to compare 
    System.out.println("equal");//or whatever your action is 
    } 
} 

编辑:

如果你正在寻找做的是验证搜索到的字符串是否出现在字符串[i]中,您可以尝试:

string[0] = "pentagon"; 
string[1] = "pencil"; 
string[2] = "pen"; 
string[3] = "eraser"; 
string[4] = "penny"; 
string[5] = "pen"; 
string[6] = "penguin"; 
string[7] = "charp"; 
string[8] = "charpen"; 
string[9] = ""; 
String ch = "pen"; 

然后测试,如果数组元素包含搜索字符串:

for (int i = 0; i < string.length; i++) { 
    if (string[i].indexOf(ch) != -1) { 
    System.out.println(string[i]+" contains "+ch); 
    } else 
    System.out.println(string[i]+" doesn't contain "+ch); 
} 

编辑2:

int i=0; 
Boolean found=false; 
while(i < string.length && !found) { 
    if (string[i].indexOf(ch) != -1) { 
    found=true; 
    } 
i++; 
} 
if(found){ 
system.out.println(ch+" is found"); 
} 
+0

不幸的是,代码没有解决。假如我输入“charp”给变量ch,它显示的字符串[i]不包含charp。然后 – xdhe 2014-11-05 12:18:13

+0

没有结果是: ***五角大楼不包含CHARP ***铅笔不含CHARP ***笔不包含CHARP ***橡皮擦不含CHARP * **一分钱不包含charp *** pen不包含charp ***企鹅不包含charp *** charp包含charp *** charpen包含charp ***不包含charp – 2014-11-05 13:11:55

+0

嗯,我明白了。基本上我希望代码检查所有列表是否有* ch *,然后输出到屏幕上,如果* ch *在列表中。 – xdhe 2014-11-05 13:15:22