我不是一个dotnet程序员,但需要将dotnet代码迁移到java。理解以下文章有问题
比方说特定的Termical和ShipTo具有不同值的Latitude属性,所以当我们使用concat时会发生什么,最终值是什么,例如23.10+43.10或其他
List<OrderDispatchItemDTO> locations =(List<OrderDispatchItemDTO>) msg.Details.Select(x => x.SpecificTerminal).Concat(msg.Details.Select(x => x.ShipTo));
您提供的代码行返回一个OrderDispatchItemDTO
对象列表,其中包含Details
对象的SpecificTerminal
和ShipTo
属性的值。
它没有对SpecificTerminal
和ShipTo
属性的值进行任何类型的计算;它只将两者添加到一个公共列表中。
更详细:
Select
方法返回选定对象的新IEnumerable
Concat
方法将第二个集合连接到第一个集合中
Concat是一个字符串方法。当你连接"23.10"one_answers"43.10"时,它会给出"23.1043.10"。因此,将两个字符串组合在一起。
要在c#中进行任何计算,必须将字符串数据类型转换为其他符合条件的数学数据类型。您可以将这两个值转换为浮点值,并将它们相加,如下所示:
Float sum = Convert.ToFloat(23.10) + Convert.ToFloat(43.10);