Python、Java、PHP 判断字符串是否一致的方法总结
语言 | 方法 | 示例 |
---|---|---|
Python | == (直接比较内容) |
if str1 == str2: |
Java | equals() (比较内容) |
if (str1.equals(str2)) |
PHP | == 或 strcmp() |
if ($str1 == $str2) 或 if (strcmp($str1, $str2) == 0) |
注意事项:
-
Python:
==
直接比较字符串内容,is
比较对象是否相同(一般不用于字符串比较)。- 示例:
str1 = "hello" str2 = "hello" print(str1 == str2) # True print(str1 is str2) # 可能 True(字符串驻留优化),但不推荐依赖此特性
-
Java:
- 不要用
==
(比较的是引用地址,不是内容)。 - 使用
equals()
比较内容:String str1 = "hello"; String str2 = new String("hello"); System.out.println(str1 == str2); // False(不同对象) System.out.println(str1.equals(str2)); // True(内容相同)
- 不要用
-
PHP:
==
比较内容(推荐)。strcmp()
返回0
表示一致,区分大小写:$str1 = "Hello"; $str2 = "hello"; var_dump($str1 == $str2); // false(大小写敏感) var_dump(strcmp($str1, $str2)); // 非0(区分大小写)
- 不区分大小写比较:
strcasecmp()
:var_dump(strcasecmp($str1, $str2) == 0); // true(不区分大小写)
总结:
- Python:
==
(推荐),is
比较对象(少用)。 - Java:
equals()
(必须用),==
比较引用(慎用)。 - PHP:
==
(推荐),strcmp()
用于精确比较。