C#新手学习 关于数组 请教
今天在学数组看到了一道题, “将一个字符串数组的元素的顺序进行反转”{“3“,”a“,”8“,”haha“}
程序如下;
string[] names={"3","a","8","haha"};
for(int i=0;i<name.length;i++)
{
string temp=names[i];
names[i]=names[names.length-1-i];
names[names.length-1-i]=temp;
}
最后输出就不写了 我一直看不动 names.length-1-i 是怎么来的 为什么这样写啊.请教各位大神 指导一下啊
我是新手啊 这是我目前第一个没搞懂的点啊 谢谢啦
------解决方案--------------------
names.length-1-i
这是一个简单的数学概念
你想得到5,4,3,2,1,0这样的倒序数列,就要用负号,-i来实现倒序。
5-0=5,5-1=4,5-2=3,5-3=2,5-4=1,5-5=0
names.length-1只是为了对齐数字,10个数字是0到9,由于最小是0,所以10变成9要减1