转换数组中的表单值

时间:2015-11-02 08:35:19

标签: c# linq

我想转换以下数组:

double[] HousePriceInDollars = { 3.4, 5.2, 1.2, 0.7, 2.6, 2.7, 3.0 };

以瑞典价格购买新阵列。所以它看起来像{27.2,41.6,9.6};

所以瑞典的价值是美元的8倍。

如何使用linQ执行此操作?我对编程很陌生。

我试过这样做:

double[] HousePriceInDollars = { 3.4, 5.2, 1.2, 0.7, 2.6, 2.7, 3.0 };

double[] NewPriceInSek = (from f in HousePriceInDollars
                          select f)

6 个答案:

答案 0 :(得分:2)

您可以使用Select

double[] NewPriceInSek = HousePriceInDollars.Select(x => x * 8).ToArray();

答案 1 :(得分:1)

var NewPriceInSek = HousePriceInDollars.Select(d => d * 8).ToArray();

enter image description here

答案 2 :(得分:1)

var conversionRate = 8;
var NewPriceInSek = HousePriceInDollars.Select(x=> x*conversionRate).ToList();

答案 3 :(得分:0)

试试这个

double[] HousePriceInDollars = { 3.4, 5.2, 1.2, 0.7, 2.6, 2.7, 3.0 };
List<double> NewPrice = new List<double>();

foreach (var cost in HousePriceInDollars)
{
    NewPrice.Add(cost * 8);
}

double[] NewPriceInSek = NewPrice.ToArray();

答案 4 :(得分:0)

在查询表达式语法中:

using System;
using System.Linq;

public class Program
{
    public static void Main()
    { 
        double[] HousePriceInDollars = { 3.4, 5.2, 1.2, 0.7, 2.6, 2.7, 3.0 };

        var query =
            from n in HousePriceInDollars
            select n * 8;

        foreach (var item in query)
            Console.WriteLine(item);
    }
}

答案 5 :(得分:0)

由于您的数据结构是数组,因此您可以使用Array.ConvertAll

double[] NewPriceInSek = Array.ConvertAll(HousePriceInDollars, d => d * 8);