*int a[3]=new int [3]
int [3]a; a=new int[3] 错误
二维数组
e.g: int a[][]=new int[3][2];
//A.java
class A
{public static void main(String args[])
{int a[][]={{1,2},{3,4},{5,6}};
int s=0;
a[2][1]=5;
for(int i=0;i<a.length;i++)
for(int j=0;j<a[i].length;j++)
s=s+a[i][j];
System.out.println(s);//20
}
}
先定义行再定义列
锯齿状数组
e.g: int a[][]=new int[4][];
a[0]=new int[2];
a[1]=new int[3];
a[2]=new int[4];
a[3]=new int[5];
等价于
int a[][]=new int[4][];
for(int i=0;i<a.length;i++)
a[i]=new int[i+2];
5-2字符串
。在Java中,字符串是引用数据类型
。String类:字符串常量,创建之后不能在修改和变动
。StringBuffer类:字符串变量,其长度和内容都可变
e.g:String s;//s=null
s=new String("ABC");
等价于: String s=new String(“ABC”);
//public int length();返回当前串对应的长度
e.g: String s="Hello!";
System.out.println(s.length());//6
//public boolean equals(Object obj);
e.g: Sring s1="good",s2="good",s3="book";
boolean b1=s1.equals("good");//b1=true
boolean b2=s1.equals(s2);b2=true
boolean b3=s1.equals(s3);b3=true
e.g:public class A
{public static void main(String args[])
{char c[]={'a','b','c'};
StringBuffer b;
b=new StringBuffer().append(c).append(123);
System.out.print(b);//abc123
b.append(true).append(4.5);
System.out.print(b);//abc123true4.5
String s=b.toString();
System.out.print(s);//abc123ture4.5
}
}
Java Application命令行参数
。串参数用空格或双引号分隔,若串参数本身含有空格,则必须用双引号
。所有命令行参数都是以字符串String类型的对象形式存在
。若希望把命令行参数作为其他类型的数据使用,应作类型转换
e.g:用Integer类的静态方法parseInt来实现String到整型int数的转换
int x=Integer.parseInt(args[0]);
double a=Double.parseInt(args[1]);
float b=Float.parseFloat(args[2]);
println//输出并换行
5-3引用数据类型(数组,字符串,类,接口)
双向传递,内存地址共享