JAVA和C++数组初始化
2016-07-07 10:25
423 查看
JAVA一维数组
TestD.java(动态):
TestS.java(静态):
TestDefault.java(默认):
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[][]等
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[][]等
相关文章推荐
- 用VIM打造C语言编写器
- c语言编程文件和函数说明模板
- c++ <>与“”
- C++中的erase方法
- C++汇总
- c++ 标准数据类型
- #pragma once与#ifndef两种防止头文件二次编译的区别
- C++命名空间
- c语言中typedef的几种用法
- c/c++使用指针做函数返回值和指针作函数参数问题
- C++中类的内存空间大小(sizeof)分析
- C/C++中函数参数传递详解
- C++中Static作用和使用方法
- C++ Queues(队列)
- C/C++程序员必须熟练应用的开源项目
- C++ typedef用法小结
- C++——指针和引用
- 介绍了如何取成员函数的地址以及调用该地址:C++
- 12.5 C语言字符数组和字符指针
- 12.4 C语言指向数组元素的指针