How to compare variables without if statement

2 ビュー (過去 30 日間)
new2matlab
new2matlab 2019 年 12 月 2 日
編集済み: dpb 2019 年 12 月 3 日
I'm looking to verify that two variables produce the same (or different, then an error will occur) result. I'm looking to find a quick way to do this without utilizing if statements.

回答 (1 件)

dpb
dpb 2019 年 12 月 2 日
編集済み: dpb 2019 年 12 月 3 日
>> assert(3==4,'Mismatch')
Mismatch
>> assert(3==3,'Mismatch')
>>
ADDENDUM:
Of course, you can make things more interesting by wrapping the assert inside a try...catch construct...
>> a=3;b=4; % unequal variables
>> try
assert(a==b,'') % check equality, no message output
catch
disp('Unequal') % do whatever on error here
end
Unequal
>>
Of course, what this gains over simply writing a straightforward if...else...end construct is difficult to see without context.
  2 件のコメント
new2matlab
new2matlab 2019 年 12 月 2 日
Can you explain this?
dpb
dpb 2019 年 12 月 2 日
What's to explain?
> help assert
assert Generate an error when a condition is violated.
assert(EXPRESSION) evaluates EXPRESSION and, if it is false, displays the
error message 'Assertion Failed'.
assert(EXPRESSION, ERRMSG) evaluates EXPRESSION and, if it is false,
displays the character vector contained in ERRMSG. ...
See the doc for all the gory details.
You gave no klews as to what you expect to be able to do...

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeDebugging and Analysis についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by