Tôi có Danh sách này:Tôi làm cách nào để đặt một Danh sách <string>?
IList<string> ListaServizi = new List<string>() { };
làm cách nào để đặt hàng do các chuỗi bên trong? Chữ cái và tăng dần.
Tôi có Danh sách này:Tôi làm cách nào để đặt một Danh sách <string>?
IList<string> ListaServizi = new List<string>() { };
làm cách nào để đặt hàng do các chuỗi bên trong? Chữ cái và tăng dần.
ListaServizi = ListaServizi.OrderBy(q => q).ToList();
@ Một lý do để sử dụng OrderBy sẽ là ListaServizi không có phương thức Sort vì nó được khai báo là 'IList
Nếu nó không phải là giải pháp mà bạn chọn thì tại sao đề xuất nó như là một câu trả lời? Đề xuất những gì bạn muốn làm câu trả lời; nếu điều đó có nghĩa là thay đổi loại từ IList thành List để bạn có thể gọi '.Sort' trên đó, thì tại sao không làm điều đó. – Servy
@Servy Ông đã giải quyết vấn đề mà không thay đổi đặc tả vấn đề. Đó là cách ưa thích, cho đến nay. Hơn nữa, câu lệnh vấn đề sử dụng giao diện trên mẫu thực hiện, điều này rất quan trọng. Đề xuất thay đổi đối với loại Danh sách là chính xác, nhưng phải được thực hiện như một câu trả lời thay thế, sau câu trả lời chính xác, bởi vì nó đòi hỏi phải thay đổi vấn đề. –
Bạn có thể sử dụng Sort
List<string> ListaServizi = new List<string>() { };
ListaServizi.Sort();
ListaServizi.Sort();
sẽ làm điều đó cho bạn. Nó đủ đơn giản với một danh sách các chuỗi. Bạn cần phải thông minh hơn một chút nếu sắp xếp các đối tượng.
'ListaServizi' là' IList
Câu trả lời khác là chính xác để đề xuất Sort
, nhưng có vẻ như họ đã bỏ lỡ thực tế rằng vị trí lưu trữ được nhập là IList<string
. Sort
không phải là một phần của giao diện.
Nếu bạn biết rằng ListaServizi
sẽ luôn chứa List<string>
, bạn có thể thay đổi loại được khai báo hoặc sử dụng dàn diễn viên. Nếu bạn không chắc chắn, bạn có thể kiểm tra các loại:
if (typeof(List<string>).IsAssignableFrom(ListaServizi.GetType()))
((List<string>)ListaServizi).Sort();
else
{
//... some other solution; there are a few to choose from.
}
Có lẽ nhiều thành ngữ:
List<string> typeCheck = ListaServizi as List<string>;
if (typeCheck != null)
typeCheck.Sort();
else
{
//... some other solution; there are a few to choose from.
}
Nếu bạn biết rằng ListaServizi
đôi khi sẽ tổ chức một triển khai khác nhau của IList<string>
, để lại một bình luận, và Tôi sẽ thêm một hoặc hai gợi ý để sắp xếp nó.
List<string> myCollection = new List<string>()
{
"Bob", "Bob","Alex", "Abdi", "Abdi", "Bob", "Alex", "Bob","Abdi"
};
myCollection.Sort();
foreach (var name in myCollection.Distinct())
{
Console.WriteLine(name + " " + myCollection.Count(x=> x == name));
}
đầu ra: Abdi 3 Alex 2 Bob 4
Các bạn đã thử '.Sort' http://msdn.microsoft.com/en-us/library/b0zbh7b6%28v=vs. 90% 29.aspx? – Matthew
Phương pháp sắp xếp; kết hợp với Reverse nếu u cũng cần giảm dần –
Nhìn vào đây http://www.dotnetperls.com/sort-list –