谁能告诉我php中为什么是这样?
为什么比较的是列?二维数组不是array[row][col]吗?为什么只有一个参数的时候是列?...
为什么比较的是列?二维数组不是array[row][col]吗?为什么只有一个参数的时候是列?
展开
4个回答
展开全部
的确没太看懂楼主的意思,说一下数组问题吧。
对于数组的行跟列来说,在内存中并没有这个概念,行列的感念只是程序员为了交流和程序逻辑性而给他赋予的一个属性。
其实,数组与二维数组的意义都是一个类型的集合,这里我就按照强变量类型来讲了,希望楼主能听懂,毕竟php是弱类型的变量,不适合讲这种概念,语言的处理概念上是一样的,类比融汇贯通一下就好了
首先数组与变量间:
int a[n]一个整型的包含有N个整形元素的数组,可以将其视作n个独立的整形变量。这个应该没什么好说的
int a[n][m]多数理解为一个2维的矩阵,实际可以这么理解,将a[n]看作一个独立变量b,就变成了b[m],这样就可以变量理解为,一个包含m个a[n]数组的数组型变量。这里为了区分,就出现了行列的概念。
其实在一些逻辑性比较强的强变量类型语言中(如java),设置可以出现int a[n][m][l][i]这种定义方式...变量名后的数组数量可以无限增加(只要你内存受得了)出现,3维数组,4维数组,5维数组,以至更多。
对于数组的行跟列来说,在内存中并没有这个概念,行列的感念只是程序员为了交流和程序逻辑性而给他赋予的一个属性。
其实,数组与二维数组的意义都是一个类型的集合,这里我就按照强变量类型来讲了,希望楼主能听懂,毕竟php是弱类型的变量,不适合讲这种概念,语言的处理概念上是一样的,类比融汇贯通一下就好了
首先数组与变量间:
int a[n]一个整型的包含有N个整形元素的数组,可以将其视作n个独立的整形变量。这个应该没什么好说的
int a[n][m]多数理解为一个2维的矩阵,实际可以这么理解,将a[n]看作一个独立变量b,就变成了b[m],这样就可以变量理解为,一个包含m个a[n]数组的数组型变量。这里为了区分,就出现了行列的概念。
其实在一些逻辑性比较强的强变量类型语言中(如java),设置可以出现int a[n][m][l][i]这种定义方式...变量名后的数组数量可以无限增加(只要你内存受得了)出现,3维数组,4维数组,5维数组,以至更多。
更多追问追答
追答
function compare($x,$y){ //传入两个数组型变量
if($x[1] == $y[1])return 0; //比较两个数组的第二个元素,若想等返回0
else if($x[1]<$y[1])return -1; //若X的第二个元素小于Y的第二个元素,返回-1
else return 1; //若都不是,(则x的第二个元素大于y第二个元素),返回1
}
有什么问题么?
展开全部
没懂你什么意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询