Vì nó có thể rõ ràng từ tiêu đề mà phương pháp tiếp cận chúng ta nên chọn?Vượt qua một tham số so với trả lại thông số từ hàm
Ý định là chuyển một vài tham số phương thức và nhận được kết quả. Chúng ta có thể vượt qua một tham số và phương thức khác sẽ cập nhật nó và phương thức không cần trả về bất cứ thứ gì ngay bây giờ, phương thức sẽ chỉ cập nhật biến đầu ra và nó sẽ được phản ánh cho người gọi.
Tôi chỉ đang cố gắng đặt khung câu hỏi thông qua ví dụ này.
List<String> result = new ArrayList<String>();
for (int i = 0; i < SOME_NUMBER_N; i++) {
fun(SOME_COLLECTION.get(i), result);
}
// in some other class
public void fun(String s, List<String> result) {
// populates result
}
so
List<String> result = new ArrayList<String>();
for (int i = 0; i < SOME_NUMBER_N; i++) {
List<String> subResult = fun(SOME_COLLECTION.get(i));
// merges subResult into result
mergeLists(result, subResult);
}
// in some other class
public List<String> fun(String s) {
List<String> res = new ArrayList<String>();
// some processing to populate res
return res;
}
Tôi hiểu rằng một vượt qua tham khảo và khác thì không.
Chúng ta nên chọn cái nào (trong các tình huống khác nhau) và tại sao?
Cập nhật: Chỉ xem xét nó cho các đối tượng có thể thay đổi.
Tôi không chắc chắn những gì bạn đang yêu cầu. Bạn có yêu cầu trong những tình huống bạn nên vượt qua một biến đến một phương pháp vs mua nó trong phương pháp với một getArg() hoặc bất cứ điều gì nó có thể được gọi? – Charles
Không, bạn hiểu lầm hoặc tôi không thể truyền đạt. Tôi hỏi: Chúng ta có nên chuyển một biến cho hàm như một tham chiếu hoặc trả về hàm đó từ hàm không? Trong trường hợp nào chúng ta nên sử dụng một trong hai trường hợp này? Hy vọng, tôi rõ ràng! – instanceOfObject