修剪字符串值的正确方法是什么?

时间:2014-04-07 07:38:28

标签: c# string trim

下面这样做的正确方法是什么?

是第一个还是第二个,还是两个都正确?

string strName=" Avinash ";
strName=strName.Trim();

(或)

string strName="Avinash";
string strTrimmedname=string.empty;
strTrimmedname=strName.Trim();

更新

不需要原始值,我只需要修剪字符串。我只是感到困惑,因为它在java.中不正确。

4 个答案:

答案 0 :(得分:5)

在第一种方法中,您要删除字符串前后的空格,然后将新字符串重新放入同一个变量。

在第二种方法中,您要为新字符串创建一个新变量。

没有最好的"方式,如果您需要保留旧字符串,则需要使用两个变量。

然而,这条线是多余的:

string strTrimmedname = string.empty;

你可以在第一时间给它正确的值:

string strTrimmedname = strName.Trim();

更新了问题

  

不需要原始值,我只需要修剪字符串。

然后,这应该是首选的方式。使用你发现更可读的任何东西。第一个是没有引入一个新的变量,可以帮助防止粗心的错误。第二个可能更具可读性,因为变量名称更有意义。

如果可能,我会使用选项3:string strTrimmedname =" Avinash ".Trim();

答案 1 :(得分:1)

如果您想保留strName的原始值,则首选第二种方法,尽管您不需要使用String.Empty对其进行初始化,但您可以直接指定

string strName = " Avinash ";
string strTrimmedname = strName.Trim();

如果您的意图只是从strName删除空格,那么第一个选项就可以了。或者,有一个选项编号3

string strName = " Avinash ".Trim();

答案 2 :(得分:1)

我会做第一个选择。但是,这取决于你是否需要两个变量。

答案 3 :(得分:1)

当您需要在相同字符串中设置字符串然后第一个方法正确时,两个方法都是正确的。

当你需要将变量的值存储在另一个变量中时,第二种方法是正确的。

但使用第一种方法,因为不需要Additional变量(通过不使用其他变量来减少内存)。