如何使用单词创建IF语句?

时间:2012-09-17 19:12:36

标签: java if-statement

通常是if语句:if(variable==60) {system.out.println("60");}

但我想测试variable是否与单词完全匹配。

例如,用户输入一个文本框'hello'如何创建if语句,说明用户是否输入'hello'system.out.println ....?

3 个答案:

答案 0 :(得分:7)

您需要equals方法:

if ("hello".equals(variable)) {

请注意,还有一个equalsIgnoreCase方法,如果用户可以输入“Hello”而不是“hello”,这可能很有用。

首先使用“hello”进行测试通常是一个好主意,这样如果变量为null,则不会得到NullPointerException。如果variable为null,则if返回false。

答案 1 :(得分:3)

许多人通常会对此感到困惑,因为他们尝试在字符串(对象)上使用==,并收到意外结果。您必须使用if ("hello".equals(var)) {...}。请记住,equals方法适用于对象,==通常用于基元。

答案 2 :(得分:0)

这是一个明显的例子:

    String pool1 = "funny";
    String pool2 = "funny";
    String not_pooled = new String("funny");
    System.out.println("pool1 equals pool2 ? "+(pool1==pool2)); //Equal because they point to same pooled instance
    System.out.println("pool1 equals not_pooled ? "+(pool1==not_pooled)); //Not equal because 'not_pooled' not pooled.
    System.out.println("pool1 equals not_pooled ? " +(pool1.equals(not_pooled))); //Equal because the contents of the object is checked and not the reference

输出:

pool1等于pool2?真

pool1等于not_pooled?假

pool1等于not_pooled?真