小编Ami*_*mit的帖子

List <DateTime>上的Any()方法不能按预期工作

我在winforms中使用.net 4.6(这里的代码来自测试控制台应用程序)

有一点我有一个清单,DateTime我需要弄清楚这个清单是否包含具体的日期.

为此,我尝试使用Any()列表.即使列表确实包含所需日期,也只Any()返回false.

以下是示例代码,它也具有相同的行为.所以,如果我对这段代码有所了解,我想这对我的真实代码也有帮助.

List<DateTime> dateTimeList = new List<DateTime>();
DateTime dateNow = DateTime.Now;

DateTime date = new DateTime(dateNow.Year, dateNow.Month, dateNow.Day, dateNow.Hour, dateNow.Minute, 00);
date = date.AddMinutes(-10);
while (date < dateNow.AddMinutes(10))
{
    dateTimeList.Add(date);
    date = date.AddMinutes(1);
}

dateNow = dateNow.AddSeconds(-dateNow.Second);
dateNow = dateNow.AddMilliseconds(-dateNow.Millisecond);

foreach (DateTime dateInList in dateTimeList)
    Console.WriteLine("date list List:" + dateInList.ToString("ddMMyyyy hh:mm:ss:fffz") + " - VS - desired date:" + dateNow.ToString("ddMMyyyy hh:mm:ss:fffz"));

if (dateTimeList.Any(x => x == dateNow))
    Console.WriteLine("date found"); …
Run Code Online (Sandbox Code Playgroud)

.net c# linq datetime

9
推荐指数
3
解决办法
2585
查看次数

当使用的字体不支持这种语言时,Label 控件如何正确显示日语字符?

我正在开发一个 Windows 窗体应用程序,以 .Net 4.5 作为目标框架。

Label我注意到的一件事是,如果我在控件上显示日语文本,而Font标签(Arial)不支持日语字符,那么也Label可以成功显示这些字符。

如果我在分配日语文本之前和之后检查标签的字体属性,它只会显示“Arial”,因此字体可能不会动态更改。

Label 具有哪些内部功能使其能够实现这一目标?

.net c# unicode label winforms

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

Spark Dataframe到Kafka

我正在尝试将Spark Dataframe流式传输到Kafka使用者。我做不到,请您告诉我。

我可以将数据从Kafka生产者选择到Spark,并且已经执行了一些操作。在处理完数据之后,我有兴趣将其流回Kafka(消费者)。

apache-kafka apache-spark

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

如何跳过数组中的前几个元素?

我有一个共有5000个元素的数组,在一个功能中,我只需要最后3000个元素才能继续进行.

为此,我尝试了以下解决方案.

//skipping first 2000 elements
list = list.Skip(5000 - 3000).ToArray();
Run Code Online (Sandbox Code Playgroud)

这个解决方案实际上给了我想要的解决方案,但是当我在我的代码上运行分析器时,它在这一行显示了大量的内存分配.

由于遗留下来,我必须使用Array.并且非常频繁ToArray()似乎对性能没有好处.

还有可能的解决方案,

//reversing whole list
Array.Reverse(list);
//restricting size of an array to 3000,
//so first (as reversed the list, they are last 3000 elements) 
Array.Resize(ref list, 3000);
//again reversing list to make it proper order
Array.Reverse(list);
Run Code Online (Sandbox Code Playgroud)

但是时间复杂度更差.

有没有更好的解决方案,不需要从List到Array?

c# arrays optimization memory-management winforms

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

为什么我们不能直接将对象分配给返回相同类型的方法?

我出于好奇而问这个,我知道其他方法.

我想知道,如果某个方法返回某种类型的对象,我们可以直接修改该对象的属性(在运行中 - 不将其引用到局部变量中).

为什么我们需要将它的引用转换为局部变量来改变对象本身?

在编译器级别存在哪些逻辑上的困难会限制程序员这样做.

请参阅以下示例代码:

static Demo StaticDemoInstance;
static void Main(string[] args)
{
    //allowed: means I can directly modify property of static instance
    //  received from method
    GetDemo().Name = "UpdateDemo";

    //allowed: means I can get instance and overwrite it with other instance
    //      but not directly from method
    Demo d = GetDemo();
    d = new Demo("NewCreatedDemo", false);

    //not allowed: means I can't do second step directly on method
    //  question: 
    //      when I can update instance property without …
Run Code Online (Sandbox Code Playgroud)

c# methods reference object

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

如何使用比较委托对类的字符串属性进行排序

这是我的代码.我正在尝试使用比较委托进行比较.(在visual studio code .net core中).

using System;
using System.Collections.Generic;
namespace comparisionProject
{
    public class student
    {
        public int SId { get; set; }
        public string name { get; set; }
        public int FullMarks { get; set; }=600;
        public int Marks { get; set; }

    }

    public class tester
    {
        public static int CompareNames(student std1, student std2)
        {
            return std1.name.CompareTo(std1.name);
        }
        static void Main(string[] args)
        {
            student s1 = new student(){SId=101 , name = "kalu",Marks = 456 };
            student s2 = …
Run Code Online (Sandbox Code Playgroud)

.net c# delegates .net-core

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