2017-08-18 88 views
-3

方括号是什么意思,当它在字符串之后,而不是数组? (例如STR [5]在下面的例子中)方括号是什么意思,它是在一个字符串之后,而不是一个数组?

string str; 
Console.Write("Input a string : "); 
str = Console.ReadLine(); 

Console.WriteLine(
    (str.Length < 6 && str.Equals("Hello")) 
    || (str.StartsWith("Hello") && str[5] == ' ') 
); 
+2

字符串是一个数组。字符。 – David

+0

对不起,我是新的,并重新编辑它。你能再看一遍吗? – Ingino

+0

@Ingino - 大卫给了你答案。一个字符串可以被认为是一个字符数组(即一个char []),因此您可以将其编入索引:char charChar = str [5];' – AjahnCharles

回答

1

它把一个字符串作为一个数组,所以str[5]是第六(它是碱零)字符串的元素。

编辑:更详细一点:

Console.WriteLine((str.Length < 6 && str.Equals("Hello")) || (str.StartsWith("Hello") && str[5] == ' ')); 

这有点冗余:

(str.Length < 6 && str.Equals("Hello") 

它是检查该输入字符串为均小于6个字符,并且它是完全相同(区分大小写)为“你好”。它可以简化为

str.Equals("Hello") 

这是数组位:

(str.StartsWith("Hello") && str[5] == ' ') 

这是一个检查,看看如果字符串以“你好”(相当自我解释)开始,但随后的下位检查下一个字符是否是空格('')。

总之,它将打印TRUE如果输入字符串是“你好”或者“你好”,并FALSE否则。

1

同样的事情,它意味着任何其他地方。一个字符串一个数组(或至少有一个索引器)...的char s。

例如,假设你有一个字符串:

var x = "Hello, Cruel World." 

然后你可以索引它来得到一个char

var y = x[1]; 

此时y现在是字符'e'

相关问题