Самый простой способ добавить элементы динамического списка (int) C # - PullRequest
0 голосов
/ 30 декабря 2011

Предложите мне самый простой способ добавить элементы динамического списка (int).
то есть

List<int> list1=new List<int>();
list1[0]=1;
list1[1]=2;
list1[2]=3;
.
.
.
list[n]=n; 
int finalResult= list1[0]+list1[2]+list1[3]+....list1[n]

Ответы [ 3 ]

2 голосов
/ 30 декабря 2011

Метод Linq Sum () работает с любым обобщенным перечисляемым источником.

http://msdn.microsoft.com/en-us/library/bb534734.aspx

public static double Sum<TSource>(
    this IEnumerable<TSource> source,
    Func<TSource, double> selector
)

Хороший образец прямо из http://www.dotnetperls.com/sum.

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
    //
    // Declare two collections of int elements.
    //
    int[] array1 = { 1, 3, 5, 7 };
    List<int> list1 = new List<int>() { 1, 3, 5, 7 };

    //
    // Use Sum extension on their elements.
    //
    int sum1 = array1.Sum();
    int sum2 = list1.Sum();

    //
    // Write results to screen.
    //
    Console.WriteLine(sum1);
    Console.WriteLine(sum2);
    }
}
1 голос
/ 30 декабря 2011

Вы можете использовать метод расширения LINQ Sum () :

int finalResult = list1.Sum();
0 голосов
/ 30 декабря 2011

Самый простой способ создать последовательный список и получить его сумму:

    List<int> list1 = Enumerable.Range(1, n).ToList();
    int finalResult = list1.Sum();

, если вы не используете linq, сделайте это следующим образом:

    int finalResult = 0;
    foreach (int i in list1)
        finalResult += i;
...