max*_*ywb 8 matlab string-comparison
我知道通常认为使用strcmp是比较字符串的正确方法,但我的问题是为什么?根据帮助:
A == B在A和B之间进行逐元素比较,并返回相同大小的矩阵,其中元素设置为逻辑1,其中关系为true,元素设置为逻辑0,而不是.
我能提出的所有玩具示例似乎都有效.
strcmp还会检查输入是否为char类,例如strcmp('a',double('a'))返回false,但'a' == double('a')返回true.strcmp干净地处理空输入,你不必担心两个字符串长度相同.您可以使用单元格输入轻松比较多个有用的字符串.
字符串比较可能会更慢 - 至少在当前的Matlab中.但是,不要以牺牲可读性和可维护性为代价过早地优化代码.仅在极少数情况下使用==(或可能isequal),当您确实需要性能并且非常确定您要比较的内容时(例如,使用ischar和isempty首先).