как сравнить ячейки или структуры matlab [дубликат]
Возможные Дубликаты:
Octave / MATLAB: как сравнить структуры для равенства?
существует ли простая функция сравнения для объектов MATLAB cell или struct? использование '==', похоже, не работает: (
2 ответов
Если вы хотите знать, если два массива ячеек или объекты структуры точно равны, вы всегда можете использовать isequaln.
использовать isequal
для сравнения двух ячеек. Обратите внимание, однако, что ==
не рекомендуется даже для массивов:
>> A = [1 2 3 4 5];
>> B = [1 2 3 4 5];
>> A == B
ans =
1 1 1 1 1
вам нужно будет использовать еще один трюк, чтобы использовать это выражение в операторе if, например.
причина ==
не рекомендуется для переменных типа double
из-за использования представления IEEE 754 MATLAB. Например:
>> .1 + .1 + .1 == .3
ans =
0
чтобы сравнить двойные значения более надежно, вы можете использовать