JAVA和C++数组初始化

JAVA一维数组

TestD.java(动态):

public class TestD  
{  
     public static void main(String args[]) {  
         int a[] ;  
         a = new int[3] ;  
         a[0] = 0 ;  
         a[1] = 1 ;  
         a[2] = 2 ;  
         Date days[] ;  
         days = new Date[3] ;  
         days[0] = new Date(2008,4,5) ;  
         days[1] = new Date(2008,2,31) ;  
         days[2] = new Date(2008,4,4) ;  
     }  
}  
 
class Date  
{  
     int year,month,day ;  
     Date(int year ,int month ,int day) {  
         this.year = year ;  
         this.month = month ;  
         this.day = day ;  
     }  
}  

TestS.java(静态):

public class TestS     
{     
     public static void main(String args[]) {     
         int a[] = {0,1,2} ;     
         Time times [] = {new Time(19,42,42),new Time(1,23,54),new Time(5,3,2)} ;     
     }     
}     
 
class Time     
{     
     int hour,min,sec ;     
     Time(int hour ,int min ,int sec) {     
         this.hour = hour ;     
         this.min = min ;     
         this.sec = sec ;     
     }     
}    


TestDefault.java(默认):

public class TestDefault     
{     
     public static void main(String args[]) {     
         int a [] = new int [5] ;     
         System.out.println("" + a[3]) ;    //输出0
     }     
}   

JAVA二维数组:

静态初始化: 

public class Array2 
{ 
    public static void main(String args[]) { 
        int a[][] = {{1,2},{3,4,5,6},{7,8,9}} ; 
        for(int i=0 ; i <a.length ; i++) { 
            for(int j=0 ; j<a[i].length ; j++) { 
                System.out.println("a[" + i + "][" + j + "]=" + a[i][j]) ; 
            } 
        } 
    } 
} 

动态初始化:

public class Array2D 
{ 
    public static void main(String args[]) { 
        int i , j ; 
        String s[][] ; 
        s = new String[3][] ; 
        s[0] = new String[2] ; 
        s[1] = new String[3] ; 
        s[2] = new String[2] ; 
        for(i=0 ; i<s.length ; i++) { 
            for(j=0 ; j <s[i].length ; j++) { 
                s[i][j] = new String("我的位置是:" + i + "," + j) ; 
            } 
        } 
        for(i=0 ; i<s.length ; i++) { 
            for(j=0 ; j<s[i].length ; j++) { 
                System.out.println(s[i][j]) ; 
            } 
        } 
    } 
} 

C++和JAVA的区别:
C++:
int A[5]={1,2,3,4};
int A[]={1,2,3,4,5};可以指明长度,也可以不指定,不指定时按元素实际个数作为长度。
动态时  
{
int *A;
A=new int[5];
delete[] A;
}
{
int **B;
B=new int*[5];
for(int i=0;i<5;i++)
    B[i]=new int[4];
for(int j=0;j<5;j++)
    delete[] B[i];
delete[] B;
}
C++中二维数组每行的长度必须相等
而JAVA中二维数组每行的长度可以不相等
JAVA:
int A[]={1,2,3,4};一定不会声明长度
但是可以int A[]=new int[5];动态分配长度
也就是JAVA等号左边不会出现长度的数字,都是int A[],int B[][]等

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值