小编Bah*_*rom的帖子

C#.奇怪的双重行为

这是让我发布这个问题的代码.

// int integer;
// int fraction;


// double arg = 110.1;

this.integer = (int)(arg);
this.fraction = (int)((arg - this.integer) * 100);
Run Code Online (Sandbox Code Playgroud)

变量integer正在变化110.没关系.

变量fraction正在增加9,但我期待10.

怎么了?


更新

我似乎发现问题的根源是减法

arg - this.integer

结果是0.099999999999994316.

现在我想知道我应该如何正确地减去以便得到结果0.1.

c# double

2
推荐指数
1
解决办法
142
查看次数

嵌套的 LINQ Select 正在返回 IEnumerable 的 IEnumerable

我有以下代码:

var purchaseItems = this.GetMenuItemRows().Select(
                    a => a.DishListItemRow.GetDishIngredientRows().Select(
                        b => b.PurchaseItemRow));
Run Code Online (Sandbox Code Playgroud)

LINQ 表达式正在返回类型的结果 IEnumerable<IEnumerable<PurchaseItemRow>>

我如何获得类型的结果IEnumerable<PurchaseItemRow>

.net c# linq

0
推荐指数
1
解决办法
611
查看次数

标签 统计

c# ×2

.net ×1

double ×1

linq ×1