2015-03-31 71 views
-1

我有一個整數數組如何使用LINQ找到升序

int[] arr = { 50, 20, 170, 100, 10, 150 } 

int start = 50; 

要選擇所有升號從50開始,我使用。

arr.where(x => x > 50); 

返回50, 170, 100, 150 但是,我可以想從列表中排除170,因爲它不會從一個升序列表。

另如:1,7,3,18,20 這將導致2臺:1,7,18,20和1,3,18,20

任何人都可以在這方面的幫助?

+1

你所說的 「全選升號」 是什麼意思?你需要更清楚你的要求。 (爲什麼排除170而不是排除100和150,例如?) – 2015-03-31 15:03:14

+0

您是否在排序的列表之後?你的問題是不清楚 – Liam 2015-03-31 15:10:23

+0

[排序int數組與秩序](http://stackoverflow.com/questions/12404735/sort-an-int-array-with-orderby) – Liam 2015-03-31 15:13:13

回答

0

你的意思是獲得50可以進入的所有數字嗎?

int[] arr = { 50, 20, 170, 100, 10, 150 } 

int start = 50; 

var results = arr.Where(x => x % start == 0).OrderBy(x => x); 

或者你的意思是讓所有的數字大於或等於50並進入它?

int[] arr = { 50, 20, 170, 100, 10, 150 } 

int start = 50; 

var results = arr.Where(x => x >= start && x % start == 0).OrderBy(x => x); 

兩個給你50,100和150

+0

否,不是50的因子。它可以是任何數字。 – khcha22 2015-03-31 16:36:17

+0

此外,原訂不應該改變。 – khcha22 2015-03-31 16:37:18