关于Perl中字符串比较的接受答案 与"eq"vs"=="
它说 First, eq is for comparing strings; == is for comparing numbers.
"==进行数字比较:它将两个参数都转换为数字然后进行比较."
"eq进行字符串比较:两个参数必须在词汇上匹配(区分大小写)"
您只能使用eq来比较字符串,但
eq AND == 都可用于比较数字
数字是字符串的子集,所以我只是不明白为什么你会使用==
有没有理由为什么你想使用==来比较数值而不仅仅是使用eq?
jh3*_*314 14
$a = "3.0";
print "eq" if $a eq "3"; # this will not print
print "==" if $a == 3; # this will print
Run Code Online (Sandbox Code Playgroud)
3.0在数值上等于3,所以如果你想要它们相等,请使用==
.如果你想进行字符串比较,那么"3.0"
不等于"3",所以在这种情况下你会使用eq
.最后,==
是比较便宜的操作eq
.