konakona
java的数组与php的数组对比
java的数组与php的数组对比

杯具的我,难得的中秋节竟然发烧了……

通俗易懂的名词讲解:栈内存 = 数组名 堆内存 = 数组内存,可以被多个栈内存指向。

先来说说JAVA的数组生成过程。首先申明有2种写法,无论哪种写法都是正确的。

//第一种写法
int testArray[] = null;  //数据类型  数组名[] = 默认值
//第二种写法
int[] testArray = null;

发现区别了吗?注意[]的位置,无论是放在数据类型的int申明后,还是放在数组名testArray后,都是对的喔!

申明数组仅仅是创造了一个栈内存。
而此时,数组testArray还没有任何内存区域(及堆内存)。
需要用关键字new为创造一片天空……(误)

testArray = new int[5];  //为其创建5个堆内存

new是一个关键字,用于创造数组的堆内存,这个时候的testArray数组才是真的有了属于自己的可对外存取的内存空间。

也就是
testArray[0]
testArray[1]
testArray[2]
testArray[3]
testArray[4]

这个时候就可以通过如下语句进行调用了。

System.out.println(testArray[0]);

它会显示出什么呢?int整型的默认值(就是value)是0,所以这里打印的是0。

接下来为它赋一个值吧?

testArray[2] = 123;

只要在最开始new时的指定范围内都可以,如果这里是testArray[10],就会报错了。

另外还可以有这样的写法,将堆栈一起进行。

char test[] = new char['3'];

注意到了么?申明数组的char test[]的char,必须与后面new的类型一样喔。

好了,JAVA数组的基本介绍就扯到这里,接下来对比PHP的数组。
众所周知,php是弱类型语言,任何变量数组都不需要申明就可以直接用。

$a = 'abc'; //一个变量名为a的字符类型
$b = 123; //一个整型
$c = new array(); //一个空的数组,但仍然可以打印
print_r($c);//打印数组,显示的是 “Array()”
$array['test'] = 'hello'; //创造了一个数组,它有一个test键,值为hello

PS:我没有特意去研究过php数组的堆栈过程。

PHP真的很简单喔!

再最后,写了个很无聊的java数组小例子,决定以后每天都写,只不过不一定放出来。等积累多了,我就腾个地方放~现在先考虑free的git。

//import player.guoguo;

public class DaySetp12{
	//任何人都可以给我打电话
	public double callTime[] ;
	//用户
    private static String guoguo = "果果";
	//我只承认一个人打给我
	private boolean guoguoCall = false;
	//用于存储果果拨打情况
	public static String GuoguoCallStatus;

    public static void main(String[] arg)
    {
        //分别是在早晨10点和晚上9点打给我过
        double callTime[] = {10.00,21.00};
        
        for(int i = 0 ; i < 24 ; i ++ ){
            for(int a = 0; a < callTime.length ; a ++ ){
                if(callTime[a] == (float)i){
                    GuoguoCallStatus += guoguo+"曾在9月12号的"+i+"点打了电话给我\n";
                }
                
            }
        }
        System.out.println(GuoguoCallStatus);
    }
}
赞赏
https://secure.gravatar.com/avatar/3b712b34a0e1b689cfb524c9c6bcdc47?s=256&r=g

团哥

文章作者

继续玩我的CODE,让别人说去。 低调,就是这么自信。

发表评论

textsms
account_circle
email

konakona

java的数组与php的数组对比
杯具的我,难得的中秋节竟然发烧了…… 通俗易懂的名词讲解:栈内存 = 数组名 堆内存 = 数组内存,可以被多个栈内存指向。 先来说说JAVA的数组生成过程。首先申明有2种写法,无…
扫描二维码继续阅读
2011-09-12