1. return
Tuyên bố
Bạn nghĩ rằng bạn đã học tất cả về các phương thức Java? Bất cứ điều gì bạn nghĩ rằng bạn biết, bạn vẫn chưa biết một nửa của nó.
Hãy bắt đầu với một cái gì đó đơn giản. Ví dụ, Java có một câu lệnh return cho phép bạn kết thúc ngay lập tức phương thức gọi nó. Đây là tuyên bố:
return;
Thật đơn giản: từ đơn độc return
theo sau bởi dấu chấm phẩy. Ngay sau khi chương trình thực thi câu lệnh này, phương thức hiện tại sẽ thoát ngay lập tức và cuộc gọi vẫn tiếp tục.
Nếu return
được gọi trong main
phương thức, thì main
phương thức đó sẽ ngay lập tức kết thúc và cùng với nó là toàn bộ chương trình.
Ví dụ:
|
Phương fill thức điền vào một phần của mảng đã truyền với value . Phần của mảng được lấp đầy được xác định bởi các chỉ số from và to . Nếu from nhỏ hơn 0 hoặc nếu to lớn hơn độ dài của mảng thì phương thức kết thúc ngay lập tức. |
Chương trình trên có một fill
phương thức điền vào mảng được truyền cho nó bằng value
. Nó không lấp đầy toàn bộ mảng, chỉ phần được chỉ định bởi các chỉ số from
và to
.
Khi bắt đầu phương fill
thức, các giá trị đã truyền được kiểm tra để đảm bảo rằng chúng hợp lệ. Nếu from
nhỏ hơn 0 hoặc nếu to
lớn hơn độ dài của mảng, thì fill
phương thức kết thúc ngay lập tức (thực thi một return
câu lệnh).
Tuyên bố này return
rất hữu ích: thực tế mọi phương thức trong Java đều có một phương thức và đây là lý do tại sao.
2. Phương pháp có kết quả,void
Hãy nhớ rằng chúng ta đã từng phát hiện ra rằng có những câu lệnh và có những biểu thức . Một biểu thức, không giống như một câu lệnh, có một giá trị có thể được sử dụng ở đâu đó.
Và, trong Java, các phương thức có thể có giá trị . Và đây là một tin rất tốt: các phương thức không chỉ có thể làm điều gì đó dựa trên các tham số đầu vào, mà còn, chẳng hạn, để đánh giá điều gì đó và trả về kết quả của phép tính .
Nhân tiện, bạn đã gặp phải các phương pháp như vậy:
|
Phương thức này abs() trả về một giá trị gấp đôi |
|
Phương nextInt() thức trả về mộtint |
|
Phương toUpperCase() thức trả về mộtString |
|
Phương copyOf() thức trả về mộtint[] |
Mỗi phương thức chỉ có thể trả về một giá trị của một loại được xác định trước. Kiểu trả về được xác định khi phương thức được khai báo:
public static Type name(parameters)
{
method body
}
Đâu name
là tên của phương thức, parameters
là danh sách các tham số của phương thức và type
là kiểu kết quả mà phương thức trả về.
Đối với các phương thức không trả về gì, có một loại trình giữ chỗ đặc biệt: void
.
Bạn đang viết phương thức của riêng mình và không muốn trả lại bất kỳ thứ gì cho phương thức gọi? Chỉ cần khai báo kiểu của phương thức là void
và vấn đề đã được giải quyết. Ngoài ra còn có rất nhiều phương pháp như thế này trong Java.
3. Trả về kết quả
Chúng ta mới tìm hiểu cách khai báo một phương thức trả về kết quả của một phép tính, nhưng làm thế nào để kết quả này trong chính phương thức đó?
Tuyên return
bố giúp chúng tôi ra khỏi đây một lần nữa. Truyền một kết quả từ một phương thức trông như thế này:
return value;
Where return
là câu lệnh kết thúc phương thức ngay lập tức. Và value
là giá trị mà phương thức trả về cho phương thức gọi khi nó thoát. Loại của value
phải khớp với loại type
được chỉ định trong khai báo phương thức.
Ví dụ 1. Phương pháp tính tổng hai số nhỏ nhất:
|
Phương thức trả về giá trị nhỏ nhất của hai số. Nếu a < b trả lại a Nếu không trả lại b |
Ví dụ 2. Phương thức nhân đôi chuỗi được truyền cho nó n
lần:
|
Phương thức này nhận hai tham số — một chuỗi và số lần lặp lại chuỗi đó. Một chuỗi trống được tạo cho kết quả trong tương lai. Trong một vòng lặp với times các lần lặp, một khoảng trắng và str chuỗi được thêm vào result chuỗi. Chuỗi result được trả về là kết quả của phương thức. |
Ví dụ 3: Phương pháp tính tổng hai số lớn nhất bằng toán tử bậc ba:
|
Phương thức trả về giá trị lớn nhất của hai số. trả lại (nếu a > b , thì a , ngược lại b ) |
GO TO FULL VERSION