рд▓реЗрдЦ рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдореЗрдВ
"8 рддрдереНрдп рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рд╢рд╛рдпрдж рд╕реА # рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдереЗ" рд╕реА # рднрд╛рд╖рд╛ рдХреЗ рджрд┐рд▓рдЪрд╕реНрдк рдХреНрд╖рдгреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реБрдП, рдореИрдВ рдПрдХ рдЫреЛрдЯреЗ рдирд┐рдмрдВрдз рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реИ рдХрд┐ рдХреБрдЫ рд▓реЛрдЧ рдРрд╕реЗ рд▓реЗрдЦреЛрдВ рдХреЛ "рдХрдкреНрддрд╛рдиреА" рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ рдЬреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдХрд┐рд╕реА рднреА рдЗрдЪреНрдЫрд╛ рдХреЛ рд╣рддреЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ, рдХрднреА-рдХрднреА, рдмрд╣реБрдд рд╕рд╛рд░реА рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рд╕рд╛рдордиреЗ рдЖрддреА рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рддрддреНрд╡ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ, рддреЛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдЦреЛрдЬ рдлрд╝рдВрдХреНрд╢рди рд╕рд░рдгрд┐рдпреЛрдВ рдореЗрдВ рдХреНрдпрд╛ рд▓реМрдЯрд╛рддрд╛ рд╣реИ?
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдРрд╕рд╛ рддрд░реАрдХрд╛ рд╣реИ рдЬреЛ рдПрдХ рдПрд░рд┐рдпрд░ рд▓реМрдЯрд╛рддрд╛ рд╣реИ:
Array GetArray() { return тАж }
рдФрд░ рдХреЛрдб рдЬреЛ рдЗрд╕рдореЗрдВ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рджрд┐рдЦрддрд╛ рд╣реИ:
Array array = GetArray(); int index = Array.IndexOf(array, 42); if (index != -1) { // do something }
рд╕рдм рдХреБрдЫ рдкрд░рд┐рдЪрд┐рдд рдФрд░ рдкрд░рд┐рдЪрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╣рдо рдПрдХ рддрддреНрд╡ рдирд╣реАрдВ рдвреВрдВрдврдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ
IndexOf (Array ...) рддрд░реАрдХреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реИрдВ,
-1
рдирд╣реАрдВ, рдмрд▓реНрдХрд┐
- 1
рдХреЗ
- 1
ред
рдЗрд╕рд╕реЗ рджреЛ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ:
1. рдЖрдк 0 рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░ рдПрдХ рд╕рд░рдгреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
2. рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдЧрд▓рдд рд╣реИред
0 рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдПрдХ рд╕рд░рдгреА рдмрдирд╛рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:
Array array = Array.CreateInstance(typeof(int), new int[] { 3 }, new int[] { -1 });
рдпрд╣ рдЙрджрд╛рд╣рд░рдг рддреАрди рддрддреНрд╡реЛрдВ рдХреА
рдПрдХ рд╕рд░рдгреА рдмрдирд╛рддрд╛ рд╣реИ , рдЗрдВрдбреЗрдХреНрд╕рд┐рдВрдЧ
-1
рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред
рд╕рд╣реА рдХреЛрдб рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
Array array = GetArray(); int index = Array.IndexOf(array, 42); if (index != (array.GetLowerBound(0) - 1)) { // do something }
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ .NET рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдИ рдЧрдИ рдереА рдЬрд╣рд╛рдБ рдЗрдВрдбреЗрдХреНрд╕рд┐рдВрдЧ 1 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдПрдХ рдЕрд▓рдЧ рдорд╛рдорд▓реЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдирд┐рдЪрд▓реА рд╕реАрдорд╛
int.MinValue
ред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ,
IndexOf
рдкрджреНрдзрддрд┐
int.MaxValue
рдЬреЛ
int.MinValue - 1
(рдУрд╡рд░рдлреНрд▓реЛ) рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ, рдкрд░ рд╡рд╛рдкрд╕ рдЖ
int.MaxValue
ред
рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рд╕рднреА рдХрд╛ рдзрдиреНрдпрд╡рд╛рдж!