修剪List的最后一个元素的结尾

时间:2013-05-07 12:32:01

标签: c# list

我正在从List的最后一个元素的末尾修剪一个字符,即使它有效,我觉得这不是最好的方法。

for (int i = lstTopicsDisplay.Count - 1; i >= 0; i--)
{
    if (i == lstTopicsDisplay.Count-1)
    {
        string lastValue = lstTopicsDisplay[i].TrimEnd(';');
        lstTopicsDisplay[i] = lastValue;
    }
}

有没有更好的方法,例如使用Lambda表达式来获得相同的结果?

4 个答案:

答案 0 :(得分:12)

 int lastPos = lstTopicsDisplay.Count - 1;
 lstTopicsDisplay[lastPos] = lstTopicsDisplay[lastPos].TrimEnd(';')

答案 1 :(得分:2)

lstTopicsDisplay.Last().TrimEnd(';')

答案 2 :(得分:2)

由于您只是更改列表中的一个项目,因此不需要循环。

只计算要更改的项目的索引,并使用其余代码保持不变:

int i = lstTopicsDisplay.Count - 1;

string lastValue = lstTopicsDisplay[i].TrimEnd(';');
lstTopicsDisplay[i] = lastValue;

或者简单地说:

lstTopicsDisplay[lstTopicsDisplay.Count - 1] = lstTopicsDisplay[lstTopicsDisplay.Count - 1].TrimEnd(';');

答案 3 :(得分:1)

试试这个:

string lastValue = lstTopicsDisplay.[lstTopicsDisplay.Count - 1].TrimEnd(';');