按顺序演示了以下功能:
动态创建数组
数组快速排序
反转数组元素
动态改变数组大小
检索数组中元素
复制数组中多个元素
================================
namespace StringDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
System.Collections.ArrayList mystrlist = new System.Collections.ArrayList();
mystrlist.Add("aaaaaaaa");
mystrlist.Add("bbbbbbbb");
mystrlist.Add("cccccccc");
mystrlist.Add("dddddddd");
foreach (string str in mystrlist)
{
textBox1.Text += str + "\r\n";
}
}
private void button2_Click(object sender, EventArgs e)
{
String[] myArray = { "8", "one", "4", "0", "over", "the" };
foreach (string str in myArray)
textBox1.Text += str + "\r\n";
textBox1.Text += "\r\n";
Array.Sort(myArray);
foreach (string str in myArray)
textBox1.Text += str + "\r\n";
}
private void button3_Click(object sender, EventArgs e)
{
String[] myArray = { "8", "one", "4", "0", "over", "the" };
foreach (string str in myArray)
textBox1.Text += str + "\r\n";
textBox1.Text += "\r\n";
Array.Reverse(myArray);
foreach (string str in myArray)
textBox1.Text += str + "\r\n";
}
private void button4_Click(object sender, EventArgs e)
{
String[] myArray = { "one", "two", "three" };
foreach (string str in myArray)
textBox1.Text += str + "\r\n";
textBox1.Text += "\r\n";
Array.Resize(ref myArray, 5);
myArray[3] = "aaa";
myArray[4] = "bbb";
foreach (string str in myArray)
textBox1.Text += str + "\r\n";
}
private void button5_Click(object sender, EventArgs e)
{
string[] dinosaurs = { "Compsog0000nathus",
"Amargasaurus", "Ovira0000ptor", "Veloc0000iraptor",
"Deinonychus","Dilop0000hosaurus","Gallimimus",
"Triceratops"};
foreach (string str in dinosaurs)
textBox1.Text += str + "\r\n";
textBox1.Text += "\r\n";
//要自己写一个SubStringis0000的函数,这是泛型编程
string[] subArray = Array.FindAll(dinosaurs,SubStringis0000);
foreach (string str in subArray)
textBox1.Text += str + "\r\n";
}
private static bool SubStringis0000(string str)
{
if(str.Contains ("0000"))
return true ;
else
return false ;
}
private void button6_Click(object sender, EventArgs e)
{
string[] dinosaurs = { "Compsog0000nathus",
"Amargasaurus", "Ovira0000ptor", "Veloc0000iraptor",
"Deinonychus","Dilop0000hosaurus","Gallimimus",
"Triceratops"};
foreach (string str in dinosaurs)
textBox1.Text += str + "\r\n";
textBox1.Text += "\r\n";
string[] deststr = new string[2];
//Copy还有很多类型的参数,比如数组复制等。
Array.Copy(dinosaurs, 2, deststr, 0, 2);
foreach (string str in deststr)
textBox1.Text += str + "\r\n";
}
private void button7_Click(object sender, EventArgs e)
{
textBox1.Text = "";
}
}
}
分享到:
相关推荐
在C#编程语言中,数组是存储相同类型数据的基本结构之一,它们被广泛应用于各种场景。根据不同的需求,C#提供了多种类型的数组,包括一维数组、交错数组(也称作锯齿数组或Jagged Arrays)以及多维数组。本文将深入...
这个方法的优点是它可以处理任何类型`T`的二维数组,只要该类型支持`DataTable`中的比较操作。此外,由于排序是在内存中原地进行的,所以不会增加额外的内存开销。 在实际应用中,这个方法可以广泛应用于数据分析、...
在C#编程中,有时我们需要对数组中的元素进行随机排序,比如在实现洗牌算法或者创建随机测试数据时。本文将详细介绍如何使用C#实现数组元素...通过实践这个示例,开发者可以更好地掌握C#中的数组操作和随机数生成技术。
1. 排序算法:C#中的`Array.Sort()`方法可以对数组进行排序,支持自定义比较器。例如,对整型数组进行升序排序: ```csharp int[] numbers = { 5, 2, 9, 1, 5 }; Array.Sort(numbers); ``` 2. 搜索算法:线性搜索是...
- **Array**: 类似于数组,但在.NET Framework中提供了更多的操作方法。 - **ArrayList**: 旧式集合类,支持不同类型的数据,但现在通常建议使用泛型集合。 - **Dictionary, TValue>**: 键值对集合,通过键来快速...
根据给定的文件信息,我们将深入探讨如何在C#中实现两个整型数组元素的相加操作,并且会对相关的概念和技术细节进行详细说明。 ### C#中的数组与基本操作 在C#中,数组是一种非常基础的数据结构,用于存储固定大小...
在C#编程语言中,动态声明与使用对象数组是一种常见的操作,特别是在处理不确定数量的数据时。本实例将探讨如何在C#中实现这一功能,并关注数组的声明、使用、数据保护以及内存管理。 首先,我们要了解C#中的数组。...
在C#编程语言中,一维数组是一种...以上就是关于C#一维数组操作的详细说明,包括创建、填充、统计计算、排序以及插入和删除元素。这些基础知识是C#编程中的重要组成部分,理解并熟练掌握它们将有助于提升你的编程技能。
本篇文章将深入探讨如何在C#中读取包含数组的JSON文件。 首先,我们需要了解JSON的基本结构。一个JSON文件通常包含键值对,可以表示对象或者数组。数组在JSON中用方括号`[]`表示,对象用大括号`{}`表示。例如,一个...
5. **数组类**:C#中的`System.Array`类提供了许多操作数组的方法,如排序、查找等。 **序列化** 序列化是指将对象的状态转换为可存储或可传输的形式,如XML、JSON或二进制格式。C#中的序列化有多种方式: 1. **...
本文将详细介绍如何在C#中构建JSON数组,并通过一个具体的示例来展示其实际应用。 #### JSON简介 JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于ECMAScript的一个子集,...
然而,在处理数组时,一个常见的需求是检查数组中是否存在重复的元素,这对于数据校验、排序算法、去重操作等场景至关重要。 ### C#验证数组元素是否重复的知识点 #### 1. 数组的定义与初始化 在C#中,数组可以...
以上介绍了三种不同的方法,用于将 C# 中的维数组转换为 `DataTable`。这些方法涵盖了从简单的单列数据转换到复杂的多列数据转换的各种场景。选择合适的方法取决于具体的应用需求。通过这些方法,我们可以更高效地...
在C#编程语言中,将byte数组转换为8bit灰度图像是一项常见且重要的技能,尤其是在处理图像数据或开发图像处理应用时。本文将详细解析这一过程,包括关键概念、技术细节以及具体实现步骤。 ### 关键概念 1. **8bit...
在C#编程中,结构体(Struct)与字节数组(Byte Array)之间的转换是一项常见的操作,特别是在处理网络通信、序列化或低级数据处理时。本示例提供了便捷的方法来实现这种转换,帮助开发者解决相关的技术难题。 首先...
数组操作包括访问、遍历和修改元素。访问数组元素通过索引来完成,索引从0开始。例如,`daysOfWeek[0]` 返回周一的值。遍历数组通常使用for循环,如 `for(int i = 0; i ; i++) {...}`,可以逐个访问并处理元素。修改...
### C#中的二维数组操作详解 #### 一、二维数组定义与初始化 在C#中,二维数组可以被看作是数组的数组。常见的二维数组形式主要有两种:**矩形数组**(Jagged Array)和**真正意义上的二维数组**。 ##### 1.1 ...
本教程将深入探讨如何在C#中实现数组的各种操作,包括创建、初始化、计算随机和以及排序。以下是对这些概念的详细解释: 1. **数组的创建与初始化**: 在C#中,你可以声明一个数组变量,指定它的类型和长度。例如...
C#数组的特点之一是它的索引从零开始,这意味着第一个元素的索引是0,最后一个元素的索引是数组长度减1。例如,一个包含10个元素的数组,其索引范围是0到9。在C#中,数组的声明与许多其他语言有所不同,数组类型需要...
在C#编程中,字节数组(byte[])是一种常用的数据结构,特别是在处理二进制数据、网络传输或文件操作等场景。当需要将多个字节数组合并成一个时,有多种方法可供选择。本篇文章将深入探讨并对比C#中三种常见的字节...