Xin chào Tôi đã nhận được LINQ sau đây để đặt hàng đầu vào của tôi sau giá trị thấp nhất. Nhưng tôi muốn nó chỉ xuất ra các giá trị thấp nhất.Chỉ chọn các giá trị thấp nhất với LINQ
var sortedDict = (from entry in x where entry.Value > 0 orderby entry.Value ascending select entry);
Bây giờ nếu nó nhận được thông tin sau.
3 4 2 6 2
Đây sẽ là đầu ra của tôi
2 2 3 4 6
gì tôi cần phải thay đổi trong LINQ của tôi vì vậy tôi chỉ nhận được kết quả này
2 2
Điều này có nhanh hơn câu trả lời của KJN không? Câu trả lời của anh ta sẽ khiến Min() được tính toán lại cho mỗi mục nhập bên trong danh sách dữ liệu, hoặc trình biên dịch sẽ làm một số bộ nhớ đệm của giá trị này. Tôi nghi ngờ điều đó, nhưng tôi muốn làm cho nó được xác nhận theo cách này hay cách khác. –
Có thông thường nó sẽ nhanh hơn. :) – kjn
@ Øyvind Bråthen: Nếu bạn đang sử dụng LINQ to Objects, thì có - Min() sẽ được tính toán lại cho mỗi mục nhập trong danh sách. –