2016-12-15 134 views
0

说我有一个阵列(你好,1,2-,HI,1,2)如何检查是否阵列的特定索引包含一个值的java

如何我会检查是否指数1为=为'你好“是一个非常简单的问题,但找不到答案。

这是我已经试过了,这里面是一个循环,我的数组是字符串类型:

if(array[i] == "Hello"){ 
    // do something 
    } 
+0

重新打开:这不(只是)简单地比较字符串,但比较对象数组的元素与字符串。 (但如果重新关闭,不会失眠)。 – Bathsheba

+0

@Bathsheba:问题不够精确,不知道它不是一个字符串数组。也许它应该被编辑来添加关于这个的细节。 – Berger

+1

他们只是有它,而我的答案就是废墟。这就是生活;-( – Bathsheba

回答

2
if ("Hello".equals(array[i])){ 
    // do something 
} 

是,在许多方面,最好的方式。

这将工作

  1. 如果array[i]null

  2. 如果array[i]java.lang.String

我明白,你是一个初学者,这些尤达表达不是每个人的口味之外的类型,但我无法抗拒。

(请注意,一个=分配而不是平等的测试,并==比较引用而不是内容非原始类型的Java。)

+0

应该说明'i'只是索引,在他/她的情况下:“检查索引1是否为'Hello'”,'i'只会是0或1,取决于它们了解索引 – Abdul

+0

所以你重新打开这个问题来回答这个问题已经说了什么? – Tom

+0

在编辑之前,问题显着不同(我已经回答了:我和许多人一样,认为它可怜的形式,金锤子重新打开以回答),但现在不是这样 – Bathsheba

0

这取决于你的数组类型。在你的情况下,它是字符串,所以

if(array[i].equals("Hello") { 
// do something 
} 
+0

如果array [i]'为null,这将会抛出一个NPE。 – Bathsheba

+0

@javanoob如果例如我想检查索引1是否为整数,这是否可能,因为数组的类型是字符串 – j1234567

+0

是的; Integer.parseInt(数组[i])可以解析一个整数,否则会抛出异常 – javanoob

相关问题