本文整理汇总了C#中LinkedList.Concat方法的典型用法代码示例。如果您正苦于以下问题:C# LinkedList.Concat方法的具体用法?C# LinkedList.Concat怎么用?C# LinkedList.Concat使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LinkedList
的用法示例。
在下文中一共展示了LinkedList.Concat方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SelectData
public long SelectData(LinkedList<KeyValuePair<string, string>> leftFilters, LinkedList<KeyValuePair<string, string>> topFilters, string aggregation)
{
string query = QueryBuilder.Select(new string[] { aggregation }, m_name, leftFilters.Concat(topFilters));
SQLiteCommand cmd = new SQLiteCommand(query, m_conn);
object o = cmd.ExecuteScalar();
if (o is DBNull)
return 0;
return (long)o;
}
示例2: SetFinalLength
private static void SetFinalLength(DefinitionBase[] definitions, double gridFinalLength)
{
double occupiedLength = 0d;
var stars = new LinkedList<DefinitionBase>();
var nonStarDefinitions = new LinkedList<DefinitionBase>();
foreach (DefinitionBase definition in definitions)
{
double minLength;
switch (definition.UserLength.GridUnitType)
{
case GridUnitType.Auto:
minLength = definition.MinLength;
definition.FinalLength = minLength.Coerce(definition.MinLength, definition.UserMaxLength);
occupiedLength += definition.FinalLength;
nonStarDefinitions.AddFirst(definition);
break;
case GridUnitType.Pixel:
minLength = definition.UserLength.Value;
definition.FinalLength = minLength.Coerce(definition.MinLength, definition.UserMaxLength);
occupiedLength += definition.FinalLength;
nonStarDefinitions.AddFirst(definition);
break;
case GridUnitType.Star:
double numerator = definition.UserLength.Value;
if (numerator.IsCloseTo(0d))
{
definition.Numerator = 0d;
definition.StarAllocationOrder = 0d;
}
else
{
definition.Numerator = numerator;
definition.StarAllocationOrder = Math.Max(definition.MinLength, definition.UserMaxLength) /
numerator;
}
stars.AddLast(definition);
break;
}
}
if (stars.Count > 0)
{
DefinitionBase[] sortedStars = stars.OrderBy(o => o.StarAllocationOrder).ToArray();
double denominator = 0d;
foreach (DefinitionBase definitionBase in sortedStars.Reverse())
{
denominator += definitionBase.Numerator;
definitionBase.Denominator = denominator;
}
foreach (DefinitionBase definition in sortedStars)
{
double length;
if (definition.Numerator.IsCloseTo(0d))
{
length = definition.MinLength;
}
else
{
double remainingLength = (gridFinalLength - occupiedLength).EnsurePositive();
length = remainingLength * (definition.Numerator / definition.Denominator);
length = length.Coerce(definition.MinLength, definition.UserMaxLength);
}
occupiedLength += length;
definition.FinalLength = length;
}
}
if (occupiedLength.IsGreaterThan(gridFinalLength))
{
IOrderedEnumerable<DefinitionBase> sortedDefinitions =
stars.Concat(nonStarDefinitions).OrderBy(o => o.FinalLength - o.MinLength);
double excessLength = occupiedLength - gridFinalLength;
int i = 0;
foreach (DefinitionBase definitionBase in sortedDefinitions)
{
double finalLength = definitionBase.FinalLength - (excessLength / (definitions.Length - i));
finalLength = finalLength.Coerce(definitionBase.MinLength, definitionBase.FinalLength);
excessLength -= definitionBase.FinalLength - finalLength;
definitionBase.FinalLength = finalLength;
i++;
}
}
definitions[0].FinalOffset = 0d;
for (int i = 1; i < definitions.Length; i++)
{
DefinitionBase previousDefinition = definitions[i - 1];
//.........这里部分代码省略.........
示例3: ChatRoom
/// <summary>
/// Creates a dynamic chat room with multiple clients from a linked gameList. The first client in the gameList becomes leader
/// </summary>
/// <param name="clientList"></param>
public ChatRoom(LinkedList<ChatPlayer> clientList)
{
isStatic = false;
clients = new LinkedList<ChatPlayer>();
clients.Concat(clients);
}
示例4: GetPrimaryKey
private IEnumerable<Column> GetPrimaryKey(Column column, Check check)
{
var pks = new LinkedList<Column>();
foreach (Column c in column.ForeignKeyTable.PrimaryKeys.Values)
{
if (c.ForeignKeyTable == null || c.ForeignKeyTable != null && check(c.ForeignKeyTable))
pks.AddLast(c);
else
{
pks = (LinkedList<Column>)pks.Concat(GetPrimaryKey(c, check));
}
}
return pks;
}