JavaScript
age1 = 23 ;
age2 = "23" ;
// 值相等
console.log(age1 == age2) ; // true
// 值和類型都相等
console.log(age1 === age2) ; // false
PHP
<?php
$age1 = 23 ;
$age2 = "23" ;
// 值相等
var_dump($age1 == $age2) ; // bool(true)
// 值和類型都相等
var_dump($age1 === $age2) ; // bool(false)
Python
age1 = 23
age2 = "23"
# 比較内容
print(age1 == age2) # False
# 比較位址
print(age1 is age2) # False
Java
class Demo{
public static void main(String[] args) {
int age1 = 23 ;
String age2 = "23" ;
// 錯誤: 不可比較的類型: int和String
// System.out.println(age1 == age2);
String name1 = new String("Tom") ;
String name2 = new String("Tom") ;
// 比較字元串對象位址
System.out.println(name1 == name2); // false
// 比較字元串對象内容
System.out.println(name1.equals(name2)); // true
}
}
結論
語言 | 比較内容相等 | 比較對象位址相等 | 不同類型比較 |
== | === | 自動轉換 | |
is | 不轉換 | ||
equals | 不可以比較 |