找到 2628 篇文章 关于 C#

如何使用 C# 检查给定矩阵是否为托普利茨矩阵?

Nizamuddin Siddiqui
更新于 2021年8月17日 06:39:33

571 次查看

如果从左上到右下的每个对角线都具有相同的元素,则矩阵为托普利茨矩阵。示例 1[[1, 2, 3, 4], [5, 1, 2, 3], [9, 5, 1, 2]]输出 - true在上述网格中,对角线为 -“[9]”,“[5, 5]”,“[1, 1, 1]”,“[2, 2, 2]”,“[3, 3]”,“[4]”。在每个对角线上,所有元素都相同,因此答案为 True。示例 2输入:矩阵 [[1, 2], [2, 2]]输出 - false对角线“[1, 2]”具有不同的元素代码public class Matrix    {    public bool ToeplitzMatrix(int[, ] mat)    {       int row = getMatrixRowSize(mat);       int col = getMatrixColSize(mat);       ... 阅读更多

解释 C# 中的依赖注入

Akshay Khot
更新于 2021年5月19日 08:18:30

16K+ 次查看

依赖项是另一个对象所依赖的对象。依赖注入(或反转)基本上是提供对象所需的对象,而不是让它自己构造对象。这是一种有用的技术,可以使测试更容易,因为它允许您模拟依赖项。例如,如果类 A 调用类 B 上的方法,而类 B 又调用类 C 上的方法,则意味着 A 依赖于 B,而 B 依赖于 C。使用依赖注入,我们可以将类 C 的实例传递给类 B,并将 B 的实例传递给... 阅读更多

C# 中的 System.Reflection 命名空间

Akshay Khot
更新于 2021年5月19日 08:17:54

492 次查看

C# 中的 System.Reflection 命名空间C# 中的 System.Reflection 命名空间包含通过检查元数据提供有关程序集、模块、成员、参数和其他代码项的信息的类型。此命名空间中的 Assembly 类表示一个程序集。通常,您可以使用 Type 上的 Assembly 属性访问它。程序集的身份由四个项目组成-简单名称程序集版本属性中的版本,格式为 major.minor.build.revision(如果不存在则为 0.0.0.0)区域性(如果非卫星则为中立)公钥标记(如果未强命名则为 null)完整限定的程序集名称是一个字符串,它包含这些标识项,格式为 -simple-name, Version=version,... 阅读更多

StringBuilder 类在 C# 中的作用是什么?

Akshay Khot
更新于 2021年5月19日 08:11:13

379 次查看

在 C# 中,字符串是不可变的。这意味着一旦创建字符串,就不能修改它。对字符串的任何修改都会返回一个包含修改的新字符串,同时保持原始字符串不变。string word = "aaabbbccc"; string newWord = word.Replace('b', 'd'); Console.WriteLine(word); // 打印 aaabbbccc Console.WriteLine(newWord); // 打印 aaadddcccStringBuilder 类表示一个类似字符串的对象,可以对其进行修改,即字符的可变字符串。它的实现方式与字符串类型不同,字符串类型表示字符的不可变字符串。由于修改字符串对象会创建副本,因此重复修改字符串对象可能会导致性能下降。对于少量重复,这是可以忽略不计的,但是... 阅读更多

C# 中的一些重要命名空间是什么?分别简要描述一下

Akshay Khot
更新于 2021年5月19日 08:07:39

436 次查看

.NET 包含许多命名空间,如果您包含第三方库,则还会有更多命名空间。但是,有一些命名空间您会一遍又一遍地使用。以下列出的 20 个命名空间将帮助您解决 80% 的常见、重复出现的编程问题。System包含最基本类型。这些包括常用的类、结构、枚举、事件、接口等。System.Text包含表示 ASCII 和 Unicode 字符编码的类。用于将字符块转换为字节块以及从字节块转换为字符块的类。System.Text.RegularExpressions提供正则表达式功能。System.Linq提供支持使用语言集成查询 (LINQ) 的查询的类和接口。System.XML.Linq包含 LINQ to XML 的类。LINQ to XML... 阅读更多

解释 C# 中 const 和 readonly 关键字的区别

Akshay Khot
更新于 2021年5月19日 07:50:10

684 次查看

在 C# 中,const 和 readonly 关键字都用于定义不可变值,这些值一旦声明就不能修改。但是,两者之间存在一些重要区别。constconst 修饰符声明在编译时已知且不更改的常量值,即它们是不可变的。在 C# 中,您只能将内置类型标记为 const。用户定义类型(例如类、结构等)不能为 const。此外,类成员类型(例如方法、属性或事件)不能标记为常量。您必须在声明期间初始化常量。class Period{    public const int hours = 12; ... 阅读更多

C# 提供了哪些运算符来处理空值?

Akshay Khot
更新于 2021年5月19日 07:49:08

344 次查看

C# 有以下三个运算符来处理空值-空合并运算符 (??)允许您在变量不为空时获取变量的值,或者指定可使用的默认值。它替换了 C# 中的以下表达式-string resultOne = value != null ? value : "default_value";使用以下表达式-string resultTwo = value ?? "default_value";以下是一个说明此情况的示例。示例using System; class Program{    static void Main(){       string input = null;       string choice = input ?? "default_choice";       Console.WriteLine(choice); // default_choice       string ... 阅读更多

C# 中的接口是如何工作的?

Akshay Khot
更新于 2021年5月19日 07:47:44

475 次查看

接口定义了一个将由类或结构实现的契约。它可以包含方法、属性、事件和索引器。接口类似于类,但它不包含任何数据,只指定它可以执行的行为(或更准确地说,实现它的类可以执行的行为)。一个类可以实现一个或多个接口。要实现接口成员,类应该具有与接口成员相同的定义的公共成员,即相同的名称和签名。例如,IComparer 是在 System.Collections 命名空间中定义的接口,它定义了... 阅读更多

ref、out 和 in 关键字在 C# 中的用法是什么?

Akshay Khot
更新于 2021年5月19日 07:41:00

456 次查看

在 C# 中,大多数方法可以有零个或多个参数,这些参数定义必须提供给方法的数据。任何调用方法的代码都必须将数据(称为参数)传递给方法。方法将其输入声明为参数,并且调用代码以参数的形式提供这些输入。例如,考虑以下方法和后续方法调用。static void Greet(string greeting){    Console.WriteLine(greeting); } ... Greet("Hello");在上述示例中,greeting 是 Greet() 方法的参数,“Hello”是传递给方法的参数。当您调用方法并传递... 阅读更多

简要概述 C# 和 .NET 生态系统

Akshay Khot
更新于 2021年5月19日 07:40:00

546 次查看

C# 是一种面向对象、类型安全且通用的编程语言,专注于提高程序员的生产力。它试图通过表达性、简单性和对性能的关注来实现这种生产力。它可以在不同的平台上运行,例如 Windows、Mac 和 Linux。类型安全C# 是一种静态类型的语言。这意味着在编译程序时会验证类型。这消除了程序甚至运行之前的大量错误。垃圾回收自动内存管理是 C# 的一项基本功能。它有一个垃圾回收器,与程序一起运行,回收未使用的内存。这使程序员免于... 阅读更多

广告