一个函数里面用一个return 好 还是多个return 好?
<code><?php function dmeo1($num) { if($num>0) { return true; } else { return false; } } function dmeo2($num) { $status = null; if($num>0) { $status = true; } else { $status = false; } return $status; } </code>
回复内容:
<code><?php function dmeo1($num) { if($num>0) { return true; } else { return false; } } function dmeo2($num) { $status = null; if($num>0) { $status = true; } else { $status = false; } return $status; } </code>
尽早return,不要走多余的流程
<code>php</code><code>// 一般情况 function foo($num) { if ($num>0) { return true; } return false; } // 特殊情况:正好需要返回bool值 function bar($num) { return $num>0; } </code>
你的代码很好,我帮你重写了一遍:
原始代码:
<code>javascript</code><code>function dmeo1($num) { if($num>0) { return true; } else { return false; } } </code>
重写一遍:
<code>javascript</code><code>function dmeo1($num) { flag = $num > 0; if(flag === true) { return true; } else { return false; } } </code>
代码思路瞬间清晰了。
多少return没关系,要保持代码的高度简洁易懂
<code>function dmeo($num) { return $num > 0; } </code>
<code>function dmeo3($num) { return $num>0; } </code>
灵活的根据结构定
<code>function dmeo($num) { return $num>0; } </code>
那个没有高亮的是“returm”?
除去 guard condition 型的 return, 多个 return 是不是说明函数复杂了, 职责过多而需要重新考虑设计了.
尽早返回。。。
该return的时间就return,也没有强制说几个return不好,毕竟一个return代表的是一个逻辑片段,所以其实只要逻辑清晰,代码清晰就够了!
应该尽早输出return,这样会提高效率,就是说本来你经确定数据已得到,对于之后的代码,执行的意义也不大
同意@城南往事的看法,如果一个函数在第一行就可以return,那么就没必要等到最后一行,效率先不说,可读性绝对是有差别的!
使用哪种方式能带使代码更加清晰就使用哪种,不过通常情况下使用多个return是一个更佳的选择。
具体可以参考《重构-改善代码既有设计》9.5节的介绍。
老师说啦,程序应该一个出口,避免使用多return,break
如果程序中有很多防御性设计,在出错之后程序就要退出,那么就要在每次出错的时候直接return,否则就这样了:
如果程序就是一个算法,有确定的返回值类型,那么我认为还是一个return好:
<code>function getValue($x) { $y = 0; if ($x>0) { $y = $x*$x; } else if ($x == 0) { $y = -1; } else { $y = 1/$x; } return $y; } </code>
http://stackoverflow.com/questions/36707/should-a-function-have-only-one-return-statement
我个人觉得第一种好,如果当一个方法很长时,用return可以看出在哪里直接退出,用第二种方法的话是不是得看到最后?
<code> function dmeo2($num) { $status = false; if($num>0) { $status = true; } return $status; } </code>
我比较习惯这种写法
还是看具体情况吧,如果一些前提判断,自然需要提前返回(也就是第一种)。第二种应该是那种逻辑的操作,最后给一个执行的状态。
我更倾向于第二种,用变量去控制程序返回的结果,而不是在程序各个点直接return,程序控制,怎么会进行多余的流程呢
其实很简单,分支越少越好
为什么你们都不给他的方法改个名?
<code>function isNonNegative($num) { return $num > 0; } </code>

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

Log masuk CakePHP adalah tugas yang sangat mudah. Anda hanya perlu menggunakan satu fungsi. Anda boleh log ralat, pengecualian, aktiviti pengguna, tindakan yang diambil oleh pengguna, untuk sebarang proses latar belakang seperti cronjob. Mengelog data dalam CakePHP adalah mudah. Fungsi log() disediakan

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c
