C# 比较列表中的两个对象<&燃气轮机;并赋予它们新的值

C# 比较列表中的两个对象<&燃气轮机;并赋予它们新的值,c#,C#,如何比较列表中的两个对象?该列表包含具有两个特性编号和说明的对象。数字如CC2和NS1,描述为Abcd、acd、 该列表的成员:CC1 Abcd、NU15 Abcd、CC2 Acd、NS1 Abd、CC21 Abd string start = "NU15 Abcd"; string end = "NS1 Abd"; string startletters = string.Empty; string startnumbers = string.Empty; string endletter

如何比较列表中的两个对象?该列表包含具有两个特性编号和说明的对象。数字如CC2和NS1,描述为Abcd、acd、

该列表的成员:CC1 Abcd、NU15 Abcd、CC2 Acd、NS1 Abd、CC21 Abd

string start = "NU15 Abcd";
string end = "NS1 Abd";

string startletters = string.Empty;
string startnumbers = string.Empty;

string endletters = string.Empty;
string endnumbers = string.Empty;

foreach (char c in start)
{
    if (Char.IsLetter(c))
    {
        startletters += c;
    }
    if (Char.IsNumber(c))
    {
        startnumbers += c;
    }
}
foreach (char c in end)
{
    if (Char.IsLetter(c))
    {
        endletters += c;
    }
    if (Char.IsNumber(c))
    {
        endnumbers += c;
    }
}
for (int i = 0; i < Program.file.Count; i++)
{
    if (startname == Program.file[i].Desc && start != Program.file[i].Number)
    { 
        start = Program.file[i].Number;      
    }
}

我从你的问题中了解到:

//This will get you the first two characters of the string
string subS = start.Substring(0,2);
string subE = end.Substring(0,2);

//Do the comparison
if (subS == subE)
{
//your logic
}
else 
{
//another logic
}

我不理解压缩背后的逻辑,但要创建自定义压缩,您需要实现so subS=NU和subE=NS,因此我如何在不硬编码的情况下将两者都更改为CC,因为subS和subE实际上是输入的,我将值放在那里作为它可能是什么的参考。
//This will get you the first two characters of the string
string subS = start.Substring(0,2);
string subE = end.Substring(0,2);

//Do the comparison
if (subS == subE)
{
//your logic
}
else 
{
//another logic
}