标签:end 方式 书写 代码 length vector vec myminvec out
代码非常简单,就是根据传入字符的不同,返回向量的最大或最小值而已:
1 function [out] = myminvec(vec, c) 2 %myminvec returns the minimum value in a vector 3 %Format: myminvec(vector,c) 4 5 out = vec(1); 6 if c == 'm' 7 for i = 2:length(vec) 8 if vec(i) < out 9 out = vec(i); 10 end 11 end 12 %end 13 elseif c == 'M' 14 for i = 2:length(vec) 15 if vec(i) > out 16 out = vec(i); 17 end 18 end 19 end 20 end
为了方便就做成封装了一个函数,这样当然没有问题,但是,仔细看就发现,逻辑完全一致,重复的语句也太多了,是可忍孰不可忍,改写成如下:
1 function [out] = myminvecW(vec, c) 2 %myminvec returns the minimum value in a vector 3 %Format: myminvec(vector,c) 4 5 out = vec(1); 6 for i = 2:length(vec) 7 if c == 'm' 8 vec(i) < out 9 elseif c == 'M' 10 vec(i) > out 11 end 12 out = vec(i); 13 end 14 end
也许就是重构的趣味所在吧
标签:end,方式,书写,代码,length,vector,vec,myminvec,out 来源: https://www.cnblogs.com/guochaoxxl/p/16620551.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。