Saya membuat aplikasi konsol dan saya memiliki "Menu" di mana pengguna dapat memasukkan informasi untuk membuat objek Orang baru. Berikut ini di dalam metode.
Write("Please enter the first name: ", false);
string fName = Console.ReadLine().ToUpper();
Write("Please enter the middle initial: ", false);
string mInitial = Console.ReadLine().ToUpper();
Write("Please enter the last name: ", false);
string lName = Console.ReadLine().ToUpper();
seperti itu. Saya ingin pengguna dapat keluar dari metode kapan saja jika mereka memutuskan tidak ingin membuat orang baru. Jadi saya ingin membuat metode baru yang disebut "CheckExit" dan jika mereka mengetik "EXIT" itu akan meninggalkan metode "CreatePerson". Jadi saya ingin "CheckExit" mengembalikan pengembalian. Kalau tidak, saya harus menambahkan pernyataan "jika" setelah setiap input dan yang mendapat kekacauan.
Apakah ini mungkin? Apakah return memiliki tipe return? Apa cara yang tepat untuk melakukan ini?
c#
console
return
return-type
Arkyris
sumber
sumber
throw exception
dalam metode danreturn
yang sesuaicatch
Jawaban:
return
bukan jenis yang dapat Anda kembalikan, ini adalah kata kunci untuk mengembalikan hasil. Jadi sayangnya apa yang Anda coba lakukan tidak mungkin. Namun, Anda dapat membuat kode Anda jauh lebih mudah dibaca dan diperluas dengan menggunakan array kueri dan mendapatkan hasil untuk setiap bagian dalam loop. Ini memiliki efek bonus untuk dapat menambahkan lebih banyak permintaan dengan mudah.sumber
Anda dapat membuat metode untuk membaca dari konsol untuk mengotomatiskan proses ini, seperti
Maka kode Anda akan terlihat seperti:
sumber
throw new Exception()
dan menangkapnya. Ada juga OperationCanceledException dalam kerangka yang namanya mungkin cocok dengan apa yang Anda coba lakukan dan bisa masuk akal untuk digunakan. Biasanya kita membuang berbagai jenis Pengecualian sehingga kita dapat membedakan dalam menangkap beberapa dan bukan yang lain, tetapi pada dasarnya satu-satunya cara bagi sub metode untuk membuat metode luar kembali adalah dengan metode sub untuk melempar, luar untuk tidak menangkap dan kemudian mengontrol pengembalian ke metode di atas bagian luar / "pengembalian kembali"Pernyataan pengembalian digunakan untuk mengembalikan nilai dari metode yang memiliki tipe pengembalian. Saat Anda menulis metode dengan void sebagai tipe pengembalian, Anda bisa menggunakan
return;
untuk keluar dari metode.mis., metode berikut menggunakan string sebagai tipe pengembalian,
Jika Anda menulis metode yang membuat objek dan mengembalikannya ke metode pemanggilan, maka tipe pengembalian adalah Person (kecuali jika Anda bermaksud melakukan sesuatu yang lain). Jika Anda memeriksa input pengguna dan memutuskan untuk tidak membuat Orang, Anda dapat menggunakannya
return null;
.Dan Anda dapat menggunakan metode ini di Main,
sumber
CreatePerson
segera.Satu-satunya cara adalah menggunakan
return
jika Anda ingin menghentikan metode. Tetapi Anda dapat mempersingkat beberapa hal seperti ini:sumber