Bạn có thể truyền mảng mới làm phương thức và vẫn có dữ liệu trong mảng đó không? Ví dụ: Tôi có phương thức này: foo(String[])
và tôi muốn gọi nó là số foo(new String[] s = {"String1", "String2"})
. Nhưng đó không phải là Java hợp lệ.Mảng Java làm tham số
Trả lời
Đây là một "cách Java hợp lệ" (như trong, nó biên dịch và làm những gì bạn muốn):
foo(new String[] {"String1", "String2"});
Nếu bạn có cơ hội để thay đổi phương pháp này, sau đó bạn cũng có thể xem xét để thay đổi phương pháp để có một lập luận varargs:
public void foo(String... strings) {
// ...
}
Sau đó, bạn có thể sử dụng nó như sau mà không cần phải tạo ra một cách rõ ràng một mảng:
foo("String1", "String2");
Sau đây là sau đó cũng hợp lệ :
foo("String1");
và
foo("String1", "String2", "String3");
và thậm chí nhiều hơn nữa.
Nếu bạn đang cố gắng tạo biến cục bộ s
và giữ nó xung quanh, không, bạn không thể khai báo biến trong một cuộc gọi phương thức. Bạn phải khai báo nó đầu tiên bên ngoài của cuộc gọi:
String[] s = {"String1", "String2"};
foo(s);
Bạn thể khởi s
trong cuộc gọi, nhưng tôi không thấy bất kỳ lý do gì để làm như vậy, cộng với nó trông thực sự xấu:
String[] s;
foo(s = new String[] {"String1", "String2"});
Nếu bạn muốn vượt qua chỉ có giá trị và không cần biến s
nữa, làm điều đó như thế này:
foo(new String[] {"String1", "String2"});
Bạn không thể khai báo một biến, nhưng bạn có thể vượt qua một mảng:
foo(new String[] { "String1", "String2" });
Nếu bạn muốn tham chiếu cùng một mảng sau đó, thì bạn cần khai báo trước khi gọi.
Bạn chỉ có thể thực hiện foo (chuỗi mới [] {"String1", "String2"})
- 1. Cách chuyển mảng đối tượng làm tham số trong Java
- 2. Truyền mảng dưới dạng tham số phương thức trong Java
- 3. Chuỗi mảng khởi như tham số constructor
- 4. Làm thế nào để vượt qua mảng như tham số trong phương thức java?
- 5. Java: Sử dụng enum làm tham chiếu mảng
- 6. Số lượng tối đa các tham số trong một mảng Java
- 7. Varargs với tham số null trong Java
- 8. Lấy mảng làm tham số truy vấn GET trong Python
- 9. bộ khởi tạo mảng làm tham số trong C#
- 10. jsp: bao gồm mảng tham số
- 11. Tham số chuỗi ... trong Java
- 12. Generics Java với nhiều tham số
- 13. C++ template tham số trong mảng chiều
- 14. Cách khởi tạo mảng trong java khi hàm tạo của lớp có các tham số?
- 15. Java: `enum` so với` Chuỗi` làm Tham số
- 16. Mảng byte Java chứa số âm
- 17. Java Generics loại tham số ẩn
- 18. Java Class động với tham số Constructor
- 19. Java: Enum tham số trong phương pháp
- 20. chuyển một tham số java từ maven
- 21. Các generics Java truyền tham số
- 22. C#: Chuyển đổi mảng để sử dụng trong các tham số có tham số bổ sung
- 23. Truyền mảng tham số so với tham số riêng lẻ cho một hàm trong PHP?
- 24. Loại đối tượng trong Java và mảng tham chiếu
- 25. đúc Object [] để một kiểu tham chiếu mảng trong java
- 26. PHP: Mảng các giá trị tham số chức năng biến
- 27. hành động với một mảng chuỗi như tham số
- 28. điền các tham số (... còn lại) với một mảng?
- 29. Phương pháp giá trị mặc định mảng tham số
- 30. Xóa các tham số x đầu tiên của một mảng
Làm cách nào để nhận tiền phạt? –