5
即時得到在OS X上使用示例中MATLAB_R2009b ==
提示符從一個非常奇怪的結果:怪異的結果使用``==操作符在MATLAB
s =
2
>> class(s)
ans =
double
>> class(s) == 'double'
ans =
1 1 1 1 1 1
六次是嗎?任何人都可以解釋這||提供解決方案?
即時得到在OS X上使用示例中MATLAB_R2009b ==
提示符從一個非常奇怪的結果:怪異的結果使用``==操作符在MATLAB
s =
2
>> class(s)
ans =
double
>> class(s) == 'double'
ans =
1 1 1 1 1 1
六次是嗎?任何人都可以解釋這||提供解決方案?
在Matlab中,字符串實際上只是字符數組。所以你真正在做的是比較兩個數組。這是按元素比較的,即逐個字符。所以,你可能做:
all(class(s) == 'double')
但會給出一個運行時錯誤如果class(s)
字符串長度不6.更安全是做:
strcmp(class(s), 'double')
但你應該真的是:
isa(s, 'double')
他射門,他得分!!!! +1。 – 2010-12-02 23:44:14