2009-10-29 73 views
-1

如果变量word包含一个字母d显示Goodbye!在Java中如何编写if语句?简单如果在Java语句

感谢大家。

+3

该文档始终是一个开始寻找的好地方:http://java.sun.com/javase/6/docs/api/java/lang/String.html – 2009-10-29 16:29:24

+0

检出http://java.sun。 com/docs/books/tutorial /获取有用的教程,以及http://java.sun.com/javase/6/docs/api/获取Java API。 – 2009-10-29 16:29:55

回答

17
if (word.contains("d")) { 
    System.out.println("Goodbye!"); 
} 
5

用途:

if(word.indexOf("d") >= 0) { 
    System.out.println("Goodbye!"); 
} 
+1

+1,因为这是迄今为止唯一包含大括号的答案。 – 2009-10-29 16:22:48

+1

应该是“... word.indexOf(”d“)> = 0 ...” – Chris 2009-10-29 16:37:17

+0

我相信indexOf('d')会比indexOf(“d”)效率更高 - 请注意indexOf方法的使用这需要一个字符而不是一个字符串。 – 2009-10-29 16:54:19

1

查找了Java API文档,看看有什么是String类可用。有几个选项,包括indexOf()方法,如果给定的字符不在字符串中,则返回-1,如果在字符串中找到该字符,则返回字符的索引。

int ans = mystring.indexOf(mychar); 

然后,您可以使用if语句来检查ans变量。

+0

这将是非常烦人的。在C/C++中没有这么多,但Java使用布尔值。 – Tom 2009-10-29 16:26:03

+0

@Tom在Java中,你将不得不这样做,如果(ans == -1)等 – 2009-10-29 17:38:28

1
if (word.contains("d")) System.out.println("Goodbye!"); 

那么,这是在Java!

+0

在什么版本的java他们介绍'包含'方法的字符串? – 2009-10-29 21:40:51

+0

我猜JDK5向前 – 2009-10-30 04:31:34

-4
if(word.compareTo("d") == 0) 
    System.out.println("Goodbye!"); 

if(word.equals("d")) 
    System.out.println("Goodbye!"); 

这是假设,当然这个词是一个字符串,而不是一个char。

+9

这是错误的,它会比较整个字符串,而不是它是否包含“d”。 – marcosbeirigo 2009-10-29 16:21:15

+0

我读了他错误地提问。我以为他的意思是他有一个名为'word'的字符串变量,当他想要查明字符串变量内容是否有'd'时,他想检查内容是否为'd'。我的错。 -2哈哈 – ChadNC 2009-10-30 20:16:54