c#清空数组&初始化数组&动态数组
清空数组>>>Array.Clear [去MSDN查看]
string[] str = new string[];
for (int i = ; i < str.Length; i++)
str[i] = i.ToString();
Array.Clear(str, , str.Length);
for (int i = ; i < str.Length; i++)
Console.WriteLine(string.IsNullOrEmpty(str[i]) ? "null" : str[i]);
//输出结果:
//null
//null
初始化数组>>>Initialize [去MSDN查看]
只是用于初始化,如果数组子项已经被初始化,那么不会改变它的值.(删除下面代码 x[1] = 6; 试试)
int[] x = new int[];
int[] y = new int[];
x[] = ; x[] = ;
x.Initialize();
y.Initialize();
for (int i = ; i < x.Length; i++)
Console.WriteLine("x:{0} y:{1}", x[i], y[i]);
//输出结果:
//x:5 y:0
//x:6 y:0
动态修改数组大小>>>Array.Resize [去MSDN查看]
处理流程是:先创建一个新的数组,然后把旧数组赋值过去.
int[] x = new int[];
x[] = ; x[] = ;
Array.Resize(ref x, x.Length + );
for (int i = ; i < x.Length; i++)
Console.WriteLine("x[{0}]={1}",i, x[i]);
//输出结果:
//x[0]=5
//x[1]=6
//x[2]=0
//x[3]=0
如果数组较大,性能影响明显,建议用List<>的AddRange方法. [去MSDN查看]
List<int> lst = new List<int>();
lst.Add(); lst.Add();
int[] x = new int[];
x[] = ; x[] = ;
lst.AddRange(x);
for (int i = ; i < lst.Count; i++)
Console.WriteLine("lst[{0}]={1}", i, lst[i]);
//输出结果:
//lst[0]=3
//lst[1]=4
//lst[2]=5
//lst[3]=6
关于Array数组复制拷贝,倒叙,排序等,详情参见MSDN
c#清空数组&初始化数组&动态数组的更多相关文章
- DelphiXe 中静态数组TByteArray和动态数组TBytes /array of byte 的区别
在应用中发现静态数组和动态数组是有区别的: procedure TForm1.Button1Click(Sender: TObject);var RsltStream: TMemoryStream; ...
- go 动态数组 二维动态数组
go使用动态数组还有点麻烦,比python麻烦一点,需要先定义. 动态数组申明 var dynaArr []string 动态数组添加成员 dynaArr = append(dynaArr, &quo ...
- 二维数组初始化 遍历 动态赋值 内存图 Day08
package com.sxt.arraytest3; /* * 二维数组 */ public class TestArray { public static void main(String[] a ...
- 线性表之顺序存储结构(C语言动态数组实现)
线性表的定义:N个数据元素的有限序列 线性表从存储结构上分为:顺序存储结构(数组)和 链式存储结构(链表) 顺序存储结构:是用一段连续的内存空间存储表中的数据 L=(a1,a2,a3....an) 链 ...
- C/C++顺序数据结构——动态数组测试
这是一篇顺序表数据结构——动态数组的测试, 实现 //初始化数组 //插入 //根据位置删除 //根据值删除 //查找 //打印 //释放动态数组的内存 //清空数组 //获得动态数组容量 //获得动 ...
- [数据结构1.2-线性表] 动态数组ArrayList(.NET源码学习)
[数据结构1.2-线性表] 动态数组ArrayList(.NET源码学习) 在C#中,存在常见的九种集合类型:动态数组ArrayList.列表List.排序列表SortedList.哈希表HashTa ...
- C++之动态数组
C99支持一种名为变长数组的结构来方便程序员.C++也提供了一种长度可在程序运行时确定的数组类型:动态数组.声明格式为:(声明 int 类型的数组) ; //此处可修改 ArraySize 的值 in ...
- VB默认属性、动态数组、Range对象的默认属性的一点不成熟的想法
1.默认属性 VB6.0有默认属性的特性.当没有给对象指定具体的属性时,"默认属性"是VB6.0将使用的属性.在某些情形下,省略常用属性名,使代码更为精简. 因为CommandBu ...
- [VBS]脚本中的字典、动态数组、队列和堆栈
今天用VBS脚本写了几个程序,用到了字典(Dictionary).动态数组(ArrayList).队列(Queue)和堆栈(Stack).现在写篇Blog总结一下 :-) 1.编写环境 今天突发奇想下 ...
- VB.NET 数组的定义 动态使用 多维数组
我们都知道在全部程序设计语言中数组都是一个非常重要的概念,数组的作用是同意程序猿用同一个名称来引用多个变量,因此採用数组索引来区分这些变量.非常多情况下利用数组索引来设置一个循环,这样就能够高效地处理 ...
随机推荐
- JVM调优命令-jhat
jhat JVM Heap Analysis Tool命令是与jmap搭配使用,用来分析jmap生成的dump,jhat内置了一个微型的HTTP/HTML服务器,生成dump的分析结果后,可以在浏览器 ...
- CopyOnWriteArrayList真的完全线程安全吗
我之前书上看到的说法是:Vector是相对线程安全,CopyOnWriteArrayList是绝对线程安全 这种说法其实有些问题,CopyOnWriteArrayList在某些场景下还是会报错的 Co ...
- 第十九节: 结合【表达式目录树】来封装EF的BaseDal层的方法
一. 简介 该章节,可以说是一个简单轻松的章节,只要你对Expression表达式树.EF的基本使用.泛型有所了解,那么本章节实质上就是一个非常简单的封装章节,便于我们快捷开发. PS:在该章节对于E ...
- LINUX常用操作快捷方式
1. tab 命令补全 这个按键地球人都知道了! 2. Esc+ . 补全最后一次键入的字符 3.Ctrl + a 跳到命令开头 4.Ctrl+e 跳到命令结尾 5 Ctrl+ u 光标处到命令行开 ...
- like 模糊查询
select * from empwhere ename like '%O%' and ename like '%T%'--查询下员工姓名中有O和T的
- mui-选项卡+scroll滚动
详细操作见代码: <!doctype html> <html> <head> <meta charset="UTF-8"> < ...
- spring cloud 注册中心--eureka注册与发现
本文详细介绍spring cloud微服务的默认注册中心--eureka注册与发现.开发环境需要Windows系统.jdk和intellij idea.与zookeeper注册中心相比,eureka不 ...
- c++基础学习
1.输入输出函数(cout,cin) #include<iostream> int main() { using namespace std; cout<<"Come ...
- 图文解说Win7系统机器上发布C#+ASP.NET网站
1. 概述 在一台干净的Win7机器上发布ASP.NET网站需要准备的有: a) .NET Framework 环境 b) 数据库 c) IIS ...
- AWK如何打印从某一列到最后一列的内容
awk -F " " '{for (i=4;i<=NF;i++)printf("%s ", $i);print ""}' file