Pertanyaan yang diberi tag «switch-statement»

3
Hancurkan case default di switch
Saya agak bingung kapan atau tidak untuk memasukkan breaksetelah kasus terakhir, sering default. switch (type) { case 'product': // Do behavior break; default: // Do default behavior break; // Is it considered to be needed? } breakSatu-satunya tujuan adalah dalam pemahaman saya untuk menghentikan kode dari menjalankan sisa switch-kas. Apakah …


12
Menghindari voodoo `goto`?
Saya memiliki switchstruktur yang memiliki beberapa kasus untuk ditangani. Ini switchberoperasi di atas enumyang menimbulkan masalah kode duplikat melalui nilai gabungan: // All possible combinations of One - Eight. public enum ExampleEnum { One, Two, TwoOne, Three, ThreeOne, ThreeTwo, ThreeOneTwo, Four, FourOne, FourTwo, FourThree, FourOneTwo, FourOneThree, FourTwoThree, FourOneTwoThree // ETC. …



8
Mengapa Dentang / LLVM memperingatkan saya tentang penggunaan default dalam pernyataan switch di mana semua kasus yang disebutkan dicakup?
Pertimbangkan pernyataan enum dan switch berikut: typedef enum { MaskValueUno, MaskValueDos } testingMask; void myFunction(testingMask theMask) { switch (theMask) { case MaskValueUno: {}// deal with it case MaskValueDos: {}// deal with it default: {} //deal with an unexpected or uninitialized value } }; Saya seorang programmer Objective-C, tetapi saya telah …

6
Refactoring Switch Statement dan apakah ada kegunaan nyata untuk Switch Statement?
Saya membaca artikel ini dan bertanya-tanya, apakah kita menyingkirkan semua pernyataan switch dengan menggantinya dengan Kamus atau Pabrik sehingga tidak ada pernyataan beralih sama sekali dalam proyek saya. Sesuatu tidak bertambah. Pertanyaannya adalah, apakah pernyataan switch memiliki penggunaan nyata atau kita melanjutkan dan menggantinya dengan kamus atau metode pabrik (dalam …

5
Berbagai argumen dalam panggilan fungsi vs array tunggal
Saya memiliki fungsi yang mengambil set parameter, kemudian berlaku untuk mereka sebagai syarat untuk query SQL. Namun, sementara saya memilih array argumen tunggal yang berisi kondisi itu sendiri: function searchQuery($params = array()) { foreach($params as $param => $value) { switch ($param) { case 'name': $query->where('name', $value); break; case 'phone': $query->join('phone'); …

6
Peta fungsi vs pernyataan sakelar
Saya sedang mengerjakan proyek yang memproses permintaan, dan ada dua komponen untuk permintaan: perintah dan parameter. Pawang untuk setiap perintah sangat sederhana (<10 baris, sering <5). Setidaknya ada 20 perintah, dan kemungkinan akan memiliki lebih dari 50 perintah. Saya telah menemukan beberapa solusi: satu saklar besar / jika-lain pada perintah …

8
Apa manfaat dari mengaktifkan Strings di Java 7?
Ketika saya mulai memprogram di Jawa, fakta bahwa pernyataan pergantian tidak mengambil string membuat saya frustrasi. Kemudian saat menggunakan Enums, saya menyadari manfaat yang Anda dapatkan dari mereka daripada membagikan nilai mentah - jenis keamanan (yang membawa refactoring lebih mudah) & juga kejelasan kepada pengembang lainnya. Saya berjuang untuk memikirkan …

2
Mengapa bahasa tidak menggunakan fall-through eksplisit pada pernyataan switch?
Saya sedang membaca Mengapa kita harus menggunakan breakdi switch? , dan itu membuat saya bertanya-tanya mengapa fall-through implisit diizinkan dalam beberapa bahasa (seperti PHP dan JavaScript), sementara tidak ada dukungan (AFAIK) untuk fall-through eksplisit. Ini tidak seperti kata kunci baru yang perlu dibuat, karena continueakan sangat tepat, dan akan menyelesaikan …



7
Implementasi status objek dalam bahasa OO?
Saya telah diberi beberapa kode Java untuk dilihat, yang mensimulasikan perlombaan mobil, yang mencakup implementasi mesin keadaan dasar. Ini bukan mesin negara ilmu komputer klasik, tetapi hanya sebuah objek yang dapat memiliki beberapa negara, dan dapat beralih di antara negara-negara berdasarkan serangkaian perhitungan. Untuk menjelaskan masalahnya, saya punya kelas Mobil, …


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.