Rumah >pembangunan bahagian belakang >Golang >Adakah `input.Scan()` Memerlukan Klausa `if` untuk Mengendalikan Input 'menamatkan'?
Memecahkan input.Imbas() tanpa Klausa if
Dalam kod anda, anda cuba untuk menghapuskan klausa if yang mengendalikan input "akhir". Mari kita periksa dokumentasi input.Scan() untuk menjelaskan jika klausa-if diperlukan.
Menurut dokumentasi, input.Scan() mara ke token seterusnya dan mengembalikan palsu apabila imbasan tamat sama ada perlu untuk mencapai penghujung input atau ralat. Walau bagaimanapun, fungsi pemisahan lalai untuk input.Scan() ialah ScanLines, yang mengembalikan setiap baris teks tanpa sebarang penanda hujung baris yang mengekori.
Dua perkara penting yang perlu diberi perhatian di sini ialah:
Oleh itu, menaip baris kosong (menekan Enter) tidak akan menamatkan pengimbas. Ia hanya akan mengembalikan baris kosong sebagai tanda. Pengimbas hanya akan berhenti berjalan apabila:
Berdasarkan pemahaman ini, adalah tidak perlu untuk memasukkan if -klausa untuk menyemak input kosong. Pengimbas akan keluar dari gelung secara automatik apabila EOF dicapai.
Untuk meringkaskan, kod anda akan terus berfungsi seperti yang dimaksudkan, keluar dari gelung apabila pengguna menaip "tamat" atau mencapai EOF, walaupun tanpa klausa-jika.
Atas ialah kandungan terperinci Adakah `input.Scan()` Memerlukan Klausa `if` untuk Mengendalikan Input 'menamatkan'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!