浏览模式: 普通 | 列表
1月, 2022 | 1 | 2 | >

c#如何选择数据结构

[ 2022-01-24 16:59:42 | 作者: admin ]
p.s.常用的数组


文章:常用数据结构及复杂度,必须看一看 https://www.cnblogs.com/gaochundong/p/3813252.html#!comments

Array (T[])
当元素的数量是固定的,并且需要使用下标时。
string[] news = new string[10]; //一维数组
string[,] news = new string[10,8]; //二维数组
int[][] numbers = { new int[] {2,3,4}, new int[] {5,6,7,8,9} }; //数组成员也是数组的情况

Linked list (LinkedList<T>)
当元素需要能够在列表的两端添加时。否则使用 List<T>。

Resizable ...

阅读全文…

C#中List怎么用?泛型List基础用法汇总

[ 2022-01-24 16:47:22 | 作者: admin ]
C#中的List怎么样?List<T>类是ArrayList类的泛型等效类,该类使用大小可按需动态增加的数组实现IList<T>泛型接口。
  泛型的好处:它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。
 

  性能注意事项:在决定使用IList<T>还是使用ArrayList类(两者具有类似的功能)时,记住IList<T>类在大多数情况下执行得更好并且是类型安全的。如果对IList<T>类的类型T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型T 使用值类型,则需要考虑实现和装箱问题。

C# List的基础常用方法:
 

  一、声明:

  1、List<T> mList = new List<T>();

  T为列表中元素类型,现在以string类型作为例子:
...

阅读全文…

C#中数组、ArrayList和List三者的区别

[ 2022-01-24 16:37:45 | 作者: admin ]
在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到底有什么样的区别呢。

数组
数组在C#中最早出现的。在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单。

//数组
string[] s=new string[2];
  
//赋值
s[0]="a";
s[1]="b";

//修改
s[1]="a1";
        但是数组存在一些不足的地方。在数组的两个数据间插入数据是很麻烦的,而且在声明数组的时候必须指定数组的长度,数组的长度过长,会造成内存浪费,过段会造成数据溢出的错误。如果在声明数组时我们不清楚数组的长度,就会变得很麻烦。

        针对数组的这些缺点,C#中最先提供了ArrayList对象来克服这些缺点。

ArrayList
...

阅读全文…

C#泛型类的定义及使用

[ 2022-01-23 15:19:39 | 作者: admin ]
C# 语言中泛型类的定义与泛型方法类似,是在泛型类的名称后面加上<T>,当然,也可以定义多个类型,即“<T1,T2,・・・>”。

具体的定义形式如下。
class 类名<T1,T2,…>
{
         //类的成员
}

这样,在类的成员中即可使用 T1、T2 等类型来定义。

下面通过实例来演示泛型类的使用。

【实例】定义泛型类,并在泛型类中定义数组,提供添加和显示数组中全部元素的 方法。

根据题目要求,代码如下。
class MyTest<T>
{
         private T[] items = new T[3];
         private int index = 0;
         //向数组中添加项
         public void Add(T t)
         {
                if (index < 3)
                {
...

阅读全文…

c#读写ini配置文件示例

[ 2022-01-22 10:27:40 | 作者: admin ]
虽然c#里都是添加app.config 并且访问也很方便 ,有时候还是不习惯用他。那么我们来做个仿C++下的那种ini配置文件读写吧
其他人写的都是调用非托管kernel32.dll。我也用过 但是感觉兼容性有点不好 有时候会出现编码错误,毕竟一个是以前的系统一个是现在的系统。咱来写一个纯C#的ini格式配置文件读取,其实就是文本文件读写啦。但是我们要做的绝不仅仅是这样 是为了访问操作的方便 更是为了以后的使用。


都知道ini格式的配置文件里各个配置项 其实就是一行一行的文本 key跟value 用等号隔开。
像这样:
grade=5 。
各个配置项又进行分组 同类型的放到一起 称之为section 以中括号([])区分。
像这样:
[contact]
qq=410910748
website=assassinx.cnblogs.com
[score]
math=85
...

阅读全文…
第一步:配置环境(window server 2019中安装.net 3.5)
1.1 准备.net 3.5安装包

因为,sqlserver2014的安装需要.net 3.5的环境,而window server2019是默认不带这个功能的,所以需要提前安装(在win10中安装也是需要提前安装.net 3.5)。
说明: window server 2019中安装.net 3.5 不能使用下面的安装包,而是只能通过添加功能和角色(win10中可以直接使用下图的安装包)。
在这里插入图片描述
但是在window server 2019中添加.net 3.5功能的时候提示没有源文件,需要手动指定安装源路径,所以我们需要将window server 2019的iso文件中的相关cab文件拷贝到虚拟机中!

我们将window server 2019的安装包解压,然后将里面的"sources/sxs"文件夹拷贝到虚拟机的c盘下:
...

阅读全文…
问题:
安装SQL2008时无法安装SQL Server 2008 Management Studio Express

解决办法: 升级到具有高级服务的Express
先使用sql server2008安装中心(在开始菜单的microsoft sql server 2008里面有)的维护功能,将express升级到具有高级服务的Express。再安装SQL Server 2008 Management Studio Express,这就可以发现工具这个选项。安装成功。
using Newtonsoft.Json.Linq;
using Newtonsoft.Json;

string jsonText =
                     "{'Total':'0','Rows':[{'id':'31','project':'6','project_name':'一卡通','name':'接口测试!','assignedTo':'zhangsan',"
                     +"'realname':'张三','estStarted':'2016/11/23','realStarted':'2000/01/01','status':'wait'},"
                     + "{'id':'32','project':'6','project_name':'一卡通','name':'测试服务器调通!','assignedTo':'lisi',"
...

阅读全文…
1 | 2 | >