pin*_* li 0 c# methods call literals
在C#中,当调用某些实例方法时,我们总是声明该类型的变量,然后为其赋值,并最后调用该方法:
string str = "this is a string";
int test = str.IndexOf("a");
Run Code Online (Sandbox Code Playgroud)
在Javascript中,我们可以这样做:
var test = 'sdfsldkfjskdf'.indexOf('a');
Run Code Online (Sandbox Code Playgroud)
这种方法在C#中是否合法,比方说,直接使用字符串文字作为简写,没有变量的声明?
Jon*_*eet 11
是的,它绝对有效而且很好.
我怀疑即使不使用文字也不总是声明变量.例如,考虑:
string x = "hello";
string y = x.Substring(2, 3).Trim();
Run Code Online (Sandbox Code Playgroud)
这里我们使用结果Substring作为要调用的实例Trim.没有使用单独的变量.
但这同样可以写成:
string y = "hello".Substring(2, 3).Trim();
Run Code Online (Sandbox Code Playgroud)
原始文字也是如此:
string x = 12.ToString("0000");
Run Code Online (Sandbox Code Playgroud)
最终,文字只是另一种表达式,可以用作实例方法调用的目标.
| 归档时间: |
|
| 查看次数: |
434 次 |
| 最近记录: |