每条记录有 Id,Name,Address三个属性,希望实现的效果是 通过键盘输入一个Name,如果表中某条记录的Name与之相同,那么删除该条记录。
下面的代码问题在于,主函数中使用for进行遍历 ,想要删除时,无法引用ar_cus[i].Name属性,这个怎么处理?using System;
using System.Collections;namespace myCSharp
{
public class Customer
{
private string id;
private string name;
private string address; public string Id
{
set { id = value; }
get { return id; }
} public string Name
{
set { name = value; }
get { return name; }
} public string Address
{
set { address = value; }
get { return address; }
}
public Customer(string _id, string _name, string _address)
{
id = _id;
name = _name;
address = _address;
} } class Program
{
public static void Main()
{
Customer cus1 = new Customer("01","Adam","Iden");
Customer cus2 = new Customer("02", "Bradley", "Britain");
Customer cus3 = new Customer("03", "Charis", "Canada"); ArrayList ar_cus = new ArrayList();
ar_cus.Add(cus1); //向二维表中添加记录
ar_cus.Add(cus2);
ar_cus.Add(cus3); foreach (Customer a in ar_cus)
{
Console.WriteLine(a.Id + " " + a.Name + " " + a.Address);
} Console.ReadKey(); Console.WriteLine("Please enter a name that will be deleted: ");
string hold_dele;
hold_dele = Console.ReadLine(); //获取要删除的元素的姓名.例如输入Adam,
//想要到达删除Adam那条记录的目的
for (int i = 0; i <= ar_cus.Count - 1; i++) //这里遍历时存在问题,ar_cus[i].Name 貌似无法引用
//这个问题怎么解决?
{
if (ar_cus[i].Name == hold_dele)
{
ar_cus.RemoveAt(i);
}
} foreach (Customer a in ar_cus) //输出二维表的所有元素
{
Console.WriteLine(a.Id + " " + a.Name + " " + a.Address);
}
Console.ReadKey();
}
}
}
下面的代码问题在于,主函数中使用for进行遍历 ,想要删除时,无法引用ar_cus[i].Name属性,这个怎么处理?using System;
using System.Collections;namespace myCSharp
{
public class Customer
{
private string id;
private string name;
private string address; public string Id
{
set { id = value; }
get { return id; }
} public string Name
{
set { name = value; }
get { return name; }
} public string Address
{
set { address = value; }
get { return address; }
}
public Customer(string _id, string _name, string _address)
{
id = _id;
name = _name;
address = _address;
} } class Program
{
public static void Main()
{
Customer cus1 = new Customer("01","Adam","Iden");
Customer cus2 = new Customer("02", "Bradley", "Britain");
Customer cus3 = new Customer("03", "Charis", "Canada"); ArrayList ar_cus = new ArrayList();
ar_cus.Add(cus1); //向二维表中添加记录
ar_cus.Add(cus2);
ar_cus.Add(cus3); foreach (Customer a in ar_cus)
{
Console.WriteLine(a.Id + " " + a.Name + " " + a.Address);
} Console.ReadKey(); Console.WriteLine("Please enter a name that will be deleted: ");
string hold_dele;
hold_dele = Console.ReadLine(); //获取要删除的元素的姓名.例如输入Adam,
//想要到达删除Adam那条记录的目的
for (int i = 0; i <= ar_cus.Count - 1; i++) //这里遍历时存在问题,ar_cus[i].Name 貌似无法引用
//这个问题怎么解决?
{
if (ar_cus[i].Name == hold_dele)
{
ar_cus.RemoveAt(i);
}
} foreach (Customer a in ar_cus) //输出二维表的所有元素
{
Console.WriteLine(a.Id + " " + a.Name + " " + a.Address);
}
Console.ReadKey();
}
}
}
解决方案 »
- 关于进度条 progressBar 的使用
- HttpWebRequest 提交Post不成功
- FTP上传送文件时,中途断网
- winform传值问题
- 请到这个帖子(帖子连接见内)指点迷津
- 在C#中那个函数的功能跟vb.net中val的函数功能一样呢?
- 请大家看看 cjol(宇宙) ( ) 这个人的人品,是不是它应滚出CSDN ,有点过激,顶者有分。
- 我靠,在笔试上,估计又死了,半死不活ing,郁闷!
- 关于给listbox控件设置初始值.
- DropDownExtender
- 画图问题,在线等,解决就结贴
- [help] C# 向ACCESS中插入数据**********************************************************
需要((Customer)ar_cus[i]).Name建议使用
List<Customer>