下面有一个字符串阵列:
string[] strArr = { "adg45","frwqer","sfd5rtgsd","pdlfd**l","qr$%Ulf5fjk","hlef"};
当你接到这个问题时,你是怎样解决写实现呢?直接写代码?还是运行面向对象的思维来开发呢?
既然有此一问,下面Insus.NET分享自己的实现方法:
创建一个对象,即代字符串阵列中每一个元素的对象:
class Item
{
private int _Index;
public int Index
{
get { return _Index; }
set { _Index = value; }
}
private string _Code;
public string Code
{
get { return _Code; }
set { _Code = value; }
}
private int _Length;
public int Length
{
get { return _Length; }
set { _Length = value; }
}
public Item() { }
public Item(int index, string code, int length)
{
this._Index = index;
this._Code = code;
this._Length = length;
}
public override string ToString()
{
return string.Format("Index: {0}, Code: {1}, Length: {2}", _Index, _Code, _Length);
}
}
Source Code
接下来,我们创建另外一个类,处理数据并把处理好的结果存储于一个集合中:
class ItemUtility
{
public List<Item> Items = new List<Item>();
public void Add(int index, string code)
{
AppendItem(index, code, code.Length);
}
private void AppendItem(int index, string code, int length)
{
var item = new Item { Index = index,Code = code,Length = length};
Items.Add(item);
}
}
Source Code
上面的类别,均是在程序里进行封装,专供程序引用与呼叫。
写程序的用户就使用拿来使用:
class Am
{
private string[] _StringArray;
public Am(string[] stringArray)
{
this._StringArray = stringArray;
}
public void Process()
{
ItemUtility utility = new ItemUtility();
int idx = 0;
foreach (string s in _StringArray)
{
utility.Add(++idx, s);
}
var result = utility.Items;
foreach (Item item in result)
{
Console.WriteLine(item.ToString());
}
}
}
Source Code
那在控制台运行上面的程序Am()
在控制台代码中,只有输出与输出,没有必要在这里写过多的代码。
达到面向对象编程的思维,封装。
注:本文内容来自互联网,旨在为开发者提供分享、交流的平台。如有涉及文章版权等事宜,请你联系站长进行处理。