Swift 4:
Попытка показать значение в метке без дополнительного () слова.
здесь x является значением Int с использованием.
let str:String = String(x ?? 0)
Если вы работаете с LINQ to Objects, стандартным способом обработки общих сравнений является использование класса Comparer
.
public static Expression<Func<T, bool>> RangeCompare<T, K>(Func<T, K> selector, IRangeValue<K> patten) where K : struct {
var cmp = Comparer<K>.Default;
Expression<Func<T, bool>> predicate = PredicateBuilder.True<T>();
if (patten.GetHigh().HasValue)
predicate = predicate.And<T>(s => cmp.Compare(selector(s), patten.GetHigh().Value) <= 0);
if (patten.GetLow().HasValue)
predicate = predicate.And<T>(s => cmp.Compare(selector(s), patten.GetLow().Value) >= 0);
return predicate;
}
Примечание: я изменил метод для получения Func
, поэтому вам не нужен вызов Compile
.