647 次浏览
位运算符作用于位并执行逐位运算。在按位右移运算符中,左操作数的值向右移动由右操作数指定的位数。在下面的代码中,我们有值 -60,即 0011 1100在右移 %minus;c = a >> 2;它在右移两次后转换为 15 -15,即 0000 1111示例您可以尝试运行以下代码以在 C# 中实现按位右移运算符 -using System; using System.Collections.Generic; using System.Text; namespace Demo { class toBinary { static void Main(string[] args) ... 阅读更多
190 次浏览
要将二进制转换为十进制,这里我使用了 while 循环并找到了二进制数的余数,它是输入。之后,余数乘以基值并相加。这就是我获得十进制值的方法 -while (val > 0) { remainder = val % 10; myDecimal = myDecimal + remainder* baseVal; val = val / 10; baseVal = baseVal * 2; }示例让我们看看在 C# 中将二进制转换为十进制的完整代码 -实时演示using System; using System.Collections.Generic; using System.Text; namespace Demo { class ... 阅读更多
10K+ 次浏览
二分查找适用于已排序的数组。将该值与数组的中间元素进行比较。如果未找到相等的值,则消除该值不存在的半部分。以相同的方式,搜索另一半部分。这是我们数组中的中间元素。假设我们需要查找 62,则左半部分将被消除,然后搜索右半部分 -以下是二分查找的复杂度 -最坏情况性能O(log n)最佳情况性能O(1)平均性能O(log n)最坏情况空间复杂度O(1)示例让我们看看实现二分查找的方法 -public ... 阅读更多
434 次浏览
使用 BigInteger 在 C# 中处理大数字。要为 BigInteger 添加的程序集是 System.Numerics。在 c# 中,BigInteger 位于 System.Numerics.BigInteger 中。语法BigInteger 的语法 -[SerializableAttribute] public struct BigInteger : IFormattable, IComparable, IComparable, IEquatable让我们来看一个示例代码片段 -BigInteger num = BigInteger.Multiply(Int64.MaxValue, Int64.MaxValue);您可以像这样创建 BigInteger -BigInteger num = new BigInteger(double.MaxValue);以下是它的一些构造函数 -序号。构造函数和描述1BigInteger(Byte[ ])使用字节数组中的值创建 BigInteger 结构的新实例。2BigInteger(Decimal)使用 Decimal 值创建 BigInteger 结构的新实例。 3BigInteger(Double)使用 Double 值创建 BigInteger 结构的新实例。... 阅读更多
870 次浏览
要在 C# 中创建计算器程序,您需要使用 Web 窗体。在其中创建从 1-9 的按钮,加法、减法、乘法等。让我们看看加法、减法和乘法的代码。首先,我们声明了两个变量 -static float x, y;现在,我们将看到如何在单个按钮单击上设置计算代码:我们的结果文本框是 tbResult,因为我们也使用了 Windows 窗体来显示计算器 -protected void add_Click(object sender, EventArgs e) { x = Convert.ToInt32(tbResult.Text); tbResult.Text = ""; y = '+'; tbResult.Text += y; } protected void sub_Click(object sender, ... 阅读更多
1K+ 次浏览
顾名思义,Background Worker 类允许您设置一个在后台连续运行并根据需要与主线程通信的线程。BackgroundWorker 使在 Windows 窗体中实现线程成为可能。需要在另一个线程上执行密集型任务,以便 UI 不冻结。在任务完成后发布消息并更新用户界面是必要的。以下属性用于 BackgroundWorker 类:参考:Microsoft 开发人员网络 (MSDN)序号。名称和描述1CancellationPending指示应用程序是否已请求取消后台操作的值。2CanRaiseEvents获取一个值,该值指示组件是否可以引发 ... 阅读更多
636 次浏览
线程定义为程序的执行路径。每个线程定义一个唯一的控制流后台线程当前台线程关闭时,后台线程将被终止。用于后台线程的属性是 IsBackground,它获取或设置一个值,该值指示线程是否为后台线程。此属性的默认值为 false,因为创建的默认线程是前台线程。要创建后台线程 -Thread bgThread = new Thread(tStart); bgThread.IsBackground = true; bgThread.Start();前台线程前台线程继续运行,直到最后一个前台线程终止。当所有前台线程停止时,... 阅读更多
2K+ 次浏览
装箱装箱是将值类型隐式转换为引用类型。拆箱拆箱是将由装箱创建的引用类型显式转换回值类型。示例让我们来看一个示例代码片段 -// int int myVal = 12; // 装箱 object myBoxed = myVal; // 拆箱 int myUnBoxed = (int) myBoxed;让我们再来看一个显示 C# 中数组列表的示例 -int a = 5; ArrayList arr = new ArrayList(); // 装箱 arr.Add(a); // 拆箱 int b = (int)arr[0];
915 次浏览
async 和 await 关键字用于 C# 中的异步编程。具有 GUI 的应用程序,检查队列的内容,如果存在未处理的任务,则将其取出并首先处理它。代码同步执行,未处理的任务首先完成。如果处理时间超过预期,则应用程序将显示停止响应消息。让我们看看上面讨论的内容 -private void OnRequestDownload(object sender, RoutedEventArgs e) { var req = HttpWebRequest.Create(_requestedUri); var res = req.GetResponse(); }要解决上述问题,请使用 async 和 await 关键字 -private async ... 阅读更多
5K+ 次浏览
C# 中的关联关联定义了 C# 中对象之间的关系。可以在对象之间定义一对一、一对多、多对一和多对多的关系。例如,一个员工可以与多个项目关联,而一个项目可以有多个员工。C# 中的组合在组合下,如果父对象被删除,则子对象也会失去其状态。组合是聚合的一种特殊类型,并提供部分关系。例如,一辆汽车有一个引擎。如果汽车被销毁,引擎也会被销毁。C# 中的聚合聚合是 C# 中对象之间的直接关系。它 ... 阅读更多