小编Mat*_*and的帖子

C#将位旋转到左溢出问题

我一直试图让这个工作好几天,我已经阅读了一千个指南和人们的问题,但是,我仍然无法找到一种正确的方法.

我想要做的是将位旋转到左侧,这是一个例子.

原始编号= 10000001 = 129我需要的是= 00000011 = 3

我必须将这些位旋转一定时间(这取决于用户输入的内容),这就是我所做的:

byte b = (byte)129;
byte result = (byte)((byte)b << 1);
Console.WriteLine(result);

Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
Run Code Online (Sandbox Code Playgroud)

这个问题,当我尝试使用带有该数字的(<<)运算符时,它会导致错误(OverflowException)(请注意,如果我将第一位的数字设为0;例如:3 = 00000011;它的工作原理如预期的那样,结果返回6.

问题是,如果第一位是1,它会给我(OverflorException)错误.我知道这不是旋转,它只是一个移位,第一位消失,在字节结束时弹出一个0,然后我可以用OR 000000001操作改变它使它成为1(如果第一位是一个1,如果它是0我只是留在那里).

有任何想法吗?提前致谢!

c# bit

6
推荐指数
2
解决办法
1220
查看次数

从绑定表源继承的类

我正在使用Xamarin和mvvmcross以及如何使用最终绑定到可观察集合的表的视图.

视频提供了有关如何创建自定义单元格的信息,但似乎已过时.在大约42分钟时,Stuart为他的表创建了一个数据源MvxSimpleBindableTableSource,但该类似乎不存在,或者至少,我找不到它.那么用mvvmcross绑定到UITableView的"最佳"方式是什么?

此外,我在常规的MvxViewController中使用UITableView,因为我似乎无法让MvxTableViewController与xib一起工作,这个问题似乎表明目前不可能.

ios mvvmcross xamarin

5
推荐指数
1
解决办法
3355
查看次数

查找字典的不同值

我有一个GroupSummary class像这样的属性:

public class GroupsSummary
{
    public bool FooMethod()
    {
      ////
    }
    public bool UsedRow { get; set; }

    public string GroupTin   { get; set; }
    public string PayToZip_4 { get; set; }
    public string PayToName  { get; set; }

    public string PayToStr1     { get; set; }
    public string PayToStr2     { get; set; }
    public string PayToCity     { get; set; }
    public string PayToState    { get; set; }
    public bool   UrgentCare_YN { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

然后我有一个Dictionary …

c# linq

5
推荐指数
1
解决办法
104
查看次数

使用动态linq分组后访问密钥

使用System.Dynamic.Linq我有一个group by语句,如下所示:

var rowGrouped = data.GroupBy(rGroup, string.Format("new({0})", c));
Run Code Online (Sandbox Code Playgroud)

哪里c只是我需要在我的分组已经选定字段名的字符串数组.GroupBy在这种情况下返回一个IEnumerable(注意:不是IEnumerable<T>因为我们不知道是什么T).常规的GroupBy会返回一个System.Collections.Generic.IEnumerable<IGrouping<TKey, TElement>>

现在我的问题是,我如何遍历组,以便我可以访问密钥(Key已定义,IGrouping<TKey, TElement>但我不知道TKeyTElement 先验)?

我最初尝试过这个:

foreach (var row in rowGrouped)
Run Code Online (Sandbox Code Playgroud)

哪个迭代,但我无法访问row.Key(row在这种情况下是类型object)

所以我这样做了:

foreach (IGrouping<object,dynamic> row in rowGrouped)
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,只要钥匙是一根绳子就行了.但是,如果密钥恰好是数字(例如short),那么我会收到此错误:

Unable to cast object of type 'Grouping`2[System.Int16,DynamicClass2]' to type 
'System.Linq.IGrouping`2[System.Object,System.Object]'.
Run Code Online (Sandbox Code Playgroud)

我需要能够遍历rowGrouped并获取Key每个row,然后遍历每个组中的集合.

c# linq

5
推荐指数
1
解决办法
1048
查看次数

字符串组合与字符替换

我正在尝试通过一个我以前没有见过的场景,并且正在努力想出一个算法来正确实现它.我的部分问题是对正确术语的朦胧回忆.我相信我需要的是标准"组合"问题的变体,但我很可能会离开那里.

场景 给定一个示例字符串"100"(让我们称之为x),生成x该交换的所有组合中的一个0(零)字符o(小写o).所以,对于简单的例子"100",我希望这个输出:

  • "100"
  • "10o"
  • "1o0"
  • "1oo"

这将需要支持具有不同0字符数的不同长度的字符串,但假设永远不会有超过5个实例0.

我有这个非常简单的算法,适用于我的样本,"100"但更长时间/更复杂的分崩离析:

public IEnumerable<string> Combinations(string input)
{
    char[] buffer = new char[input.Length];

    for(int i = 0; i != buffer.Length; ++i)
    {
        buffer[i] = input[i];
    }

    //return the original input
    yield return new string(buffer);

    //look for 0's and replace them
    for(int i = 0; i != buffer.Length; ++i)
    {
        if (input[i] == '0')
        {
            buffer[i] = …
Run Code Online (Sandbox Code Playgroud)

c# algorithm combinatorics

5
推荐指数
1
解决办法
943
查看次数

如何在没有选择的计数器的情况下计算?

有时,在开发阶段,我需要查看是否为创建的每个元素更改了名称,或者只是希望区分数组中不同实例的名称.这种行为严格用于开发阶段,只能在短时间内应用(因此不需要长期解决方案 - Q&D就好了).

通常,我会以下列方式介绍一个计数器,但它只是让我感到有一种更好的方式.基本上,我希望模拟for的变量的行为而不实际引入它(保持在foreach).

int counter = 1;
IEnumerable<Typo> result = originals.Select(original 
  => new Thingy { Name = "Hazaa" + counter++ });
Run Code Online (Sandbox Code Playgroud)

c# foreach

5
推荐指数
1
解决办法
80
查看次数

代理连接如何计算?

正在查看Azure Service Bus来替换一些不可靠的RabbitMQ服务器,而价格方面尚不清楚的一件事是,出于计费目的,它们究竟算作“代理连接”是什么?

我们有大约12台计算机正在处理超过1000个队列中的消息(其中一台计算机正在填充队列),那么在1台计算机上运行的1个应用程序是否被视为一个代理连接(无论它正在侦听多少个队列)?或将每台机器算作1,000+撮合连接(这可能加起来非常快)?

假设我做了这样的事情:

var queues = queueNames.Select(q =>
{
    if (!manager.QueueExists(q))
    {
        manager.CreateQueue(q);
    }
    return new QueueClient(ServiceBusConnectionString, q);
}).ToArray();
Run Code Online (Sandbox Code Playgroud)

Add queueNames是一个由10个字符串组成的数组。那是10个代理连接吗?1个 或者是其他东西?

azure azureservicebus

5
推荐指数
1
解决办法
1728
查看次数

拆分所有未转义的分号

我有一个包含分号的javascript-string(其中一些是转义的).

我的问题是,如何在所有未转义的分号上拆分此字符串并保留转义的分号

var example = "abc;def;ghi\;jk"
Run Code Online (Sandbox Code Playgroud)

这应该得到:

example[0] = "abc";
example[1] = "def";
example[2] = "ghi\;jk";
Run Code Online (Sandbox Code Playgroud)

我只发现了一个PHP-regex,它在javascript中不起作用:(

'/(?<!\\\);/'
Run Code Online (Sandbox Code Playgroud)

任何想法如何做到这一点?

javascript regex

4
推荐指数
1
解决办法
262
查看次数

使用segues与自定义表格单元格

我有一个我在代码中完全定义的自定义单元格类型(子类化UITableViewCell),因为我无法使用xib文件使其工作.我可以将它添加到我的故事板中的表格中的单元格中,它显示得很好.但是,我想选择那个单元格触发一个segue到另一个屏幕.我可以在xcode中创建故事板中的segue,但是当我运行代码时它似乎没有实际工作(即没有任何反应,单元格被选中).我在同一个表中也有一个常规的标题/副标题单元格,它有一个单独的segue到不同的屏幕,并且一个工作正常(触摸该单元格按预期加载下一页),所以它似乎是一个特别的问题与定制单元格.我怀疑自定义单元格中的某些东西正在替换附加的segues.

那么如何确保我的自定义单元格可以使用故事板中定义的segue?

ios uistoryboard segue xamarin

4
推荐指数
1
解决办法
3058
查看次数

使用Linq选择List外部的项目

我有一个清单

     {
        "Nutrients": [{
            "vitamin": "vitamin C",
            "potassium": "195mg",
            "sodium": "2mg",
            "cholesterol": "",
            "display_name": "Apple"
        }, {
            "vitamin": "vitamin B",
            "potassium": "176mg",
            "sodium": "2mg",
            "cholesterol": "",
            "display_name": "Grape"
        }],
        "General_name": "Fruits",
        "country_of_origin": "France"


     }


     {
        "Nutrients": [{
            "vitamin": "vitamin B",
            "potassium": "196mg",
            "sodium": "115mg",
            "cholesterol": "123mg",
            "display_name": "Chicken"

        }, {
            "vitamin": "vitamin B",
            "potassium": "360mg",
            "sodium": "53mg",
            "cholesterol": "68mg",
            "display_name": "Chicken"
        }],
        "General_name": "Meat",
        "country_of_origin": "Denmark"

     }
Run Code Online (Sandbox Code Playgroud)

我需要找到具有胆固醇空字符串值的项目的General_name.

我尝试使用linq lambda表达式作为

var elements=items.SelectMany(c =>c.Nutrients)
    .Where(a => !string.IsNullOrEmpty(a.cholesterol))
    .ToList();
Run Code Online (Sandbox Code Playgroud)

我的问题是如何从这个条件中获得通用名称

c# linq

4
推荐指数
1
解决办法
105
查看次数