Tôi có một phương thức lấy tham số. Bên trong phương pháp biến khác sẽ được bổ sung vào đầu ra:C#: Chuyển đổi mảng để sử dụng trong các tham số có tham số bổ sung
private void ParamsTest(params object[] objs)
{
var foo = "hello";
// Invalid: Interpretes objs as single array parameter:
Console.WriteLine("{0}, {1}, {2}", foo, objs);
}
Khi tôi gọi
ParamsTest("Hi", "Ho");
Tôi muốn nhìn thấy đầu ra.
hello Hi Ho
Tôi cần làm gì?
Tôi có thể sao chép foo
và objs
vào mảng mới và chuyển mảng đó đến WriteLine
nhưng có cách nào thanh lịch hơn để buộc objs
hoạt động như tham số một lần nữa không? Loại objs.ToParams()
?
Đừng sidetracked bởi ví dụ Console.WriteLine hoặc chuỗi định dạng. Đây không phải là vấn đề thực sự của tôi. Câu hỏi thực sự: Làm thế nào tôi có thể làm cho WriteLine thấy 4 (định dạng, foo và 2 phần tử mảng) args thay vì 3 (định dạng, foo và mảng). – AHalvar