1. return
Kenyataan tersebut
Fikirkan anda sudah mempelajari semua tentang kaedah Java? Apa sahaja yang anda fikir anda tahu, anda masih tidak mengetahui separuh daripadanya.
Mari kita mulakan dengan sesuatu yang mudah. Sebagai contoh, Java mempunyai pernyataan pulangan yang membolehkan anda menamatkan serta-merta kaedah yang memanggilnya. Berikut adalah kenyataannya:
return;
Ia mudah: perkataan bersendirian return
diikuti dengan koma bertitik. Sebaik sahaja program melaksanakan kenyataan ini, kaedah semasa keluar serta-merta, dan panggilan diteruskan.
Jika return
dipanggil dalam main
kaedah, maka main
kaedah akan segera berakhir, dan dengannya keseluruhan program.
Contoh:
|
Kaedah ini fill mengisi sebahagian daripada tatasusunan yang diluluskan dengan value . Bahagian tatasusunan yang akan diisi ditentukan oleh indeks from dan to . Jika from kurang daripada 0 atau jika to lebih besar daripada panjang tatasusunan, maka kaedah itu ditamatkan serta-merta. |
Program di atas mempunyai fill
kaedah yang mengisi tatasusunan yang dihantar kepadanya dengan value
. Ia tidak mengisi keseluruhan tatasusunan, hanya bahagian yang ditentukan oleh indeks from
dan to
.
Pada permulaan kaedah fill
, nilai yang diluluskan disemak untuk memastikan ia sah. Jika from
kurang daripada 0, atau jika to
lebih besar daripada panjang tatasusunan, maka fill
kaedah ditamatkan serta-merta (melaksanakan return
pernyataan).
Kenyataan ini return
berguna: hampir setiap kaedah di Jawa mempunyai satu, dan inilah sebabnya.
2. Kaedah dengan hasilnya,void
Ingat kita pernah mengetahui bahawa terdapat kenyataan, dan ada ungkapan . Ungkapan, tidak seperti pernyataan, mempunyai nilai yang boleh digunakan di suatu tempat.
Dan, dalam Java, kaedah boleh mempunyai nilai . Dan ini adalah berita yang sangat baik: kaedah bukan sahaja dapat melakukan sesuatu berdasarkan parameter input, tetapi juga, sebagai contoh, untuk menilai sesuatu dan mengembalikan hasil pengiraan .
Dengan cara ini, anda telah menemui kaedah sedemikian:
|
Kaedah ini abs() mengembalikan dua kali ganda |
|
Kaedah nextInt() mengembalikan anint |
|
Kaedah toUpperCase() mengembalikan aString |
|
Kaedah copyOf() mengembalikan anint[] |
Setiap kaedah hanya boleh mengembalikan satu nilai bagi satu jenis yang telah ditetapkan. Jenis pulangan ditentukan apabila kaedah diisytiharkan:
public static Type name(parameters)
{
method body
}
Di manakah name
nama kaedah, parameters
senarai parameter kaedah, dan type
jenis hasil yang kaedah itu kembalikan.
Untuk kaedah yang tidak mengembalikan apa-apa, terdapat jenis pemegang tempat khas: void
.
Adakah anda menulis kaedah anda sendiri dan tidak mahu mengembalikan apa-apa kepada kaedah panggilan? Hanya isytiharkan jenis kaedah sebagai void
, dan masalah itu diselesaikan. Terdapat juga banyak kaedah seperti ini di Jawa.
3. Mengembalikan keputusan
Kami baru mengetahui cara mengisytiharkan kaedah yang mengembalikan hasil pengiraan, tetapi bagaimanakah kita menghasilkan keputusan ini dalam kaedah itu sendiri?
Kenyataan itu return
membantu kami di sini sekali lagi. Meluluskan hasil daripada kaedah kelihatan seperti ini:
return value;
Di manakah return
kenyataan yang menamatkan kaedah serta-merta. Dan value
adalah nilai yang kaedah itu kembali kepada kaedah panggilan apabila ia keluar. Jenis value
mesti sepadan dengan yang type
dinyatakan dalam pengisytiharan kaedah.
Contoh 1. Kaedah mengira minimum dua nombor:
|
Kaedah ini mengembalikan minimum dua nombor. Jika a < b kembali a Jika tidak kembali b |
Contoh 2. Kaedah menduplikasi rentetan yang dihantar kepadanya n
masa:
|
Kaedah ini mengambil dua parameter — rentetan dan bilangan kali rentetan itu perlu diulang. Rentetan kosong dibuat untuk hasil masa hadapan. Dalam gelung dengan times lelaran, ruang dan str rentetan ditambahkan pada result rentetan. Rentetan result dikembalikan sebagai hasil kaedah. |
Contoh 3: Kaedah mengira maksimum dua nombor menggunakan pengendali ternary:
|
Kaedah ini mengembalikan maksimum dua nombor. kembali (jika a > b , maka a , sebaliknya b ) |
GO TO FULL VERSION