一段小代码帮忙解释一下
public class Test{
int [] x=new int[3];
public Test(){
x[1]=31;
x[2]=42;
}
{
String s= "welcom! ";
System.out.println(s);
x[1]=3;
x[2]=3;
x[0]=5;}
void print(){
for(int d:x)
System.out.println(d);
}
public static void main(String args [] ){
Test test= new Test();
test.print();
}
}
在类中两个大括号是怎么运行的
为什么结果是感觉和构造函数一样
------解决方案--------------------> > > 为什么结果是感觉和构造函数一样
对,它的作用类似域构造函数,但是在所有的构造函数之前执行。在类的属性变量初始化之后执行
------解决方案--------------------楼上正解
------解决方案--------------------板凳,
累啊,
帮顶, "gejixin() "
------解决方案--------------------实例化块/在构造函数之前运行.在静态实例化块之后运行
------解决方案--------------------for(int d:x)是啥语法啊?
------解决方案--------------------for(int d:x)是啥语法啊? 同问
------解决方案--------------------同问
------解决方案--------------------帮顶,分分
------解决方案--------------------for(int d:x)是jdk1.5的新特性
5.2.3 foreach与数组
J2SE 5.0新增了foreach的语法,又称强化的for循环(Enhanced for Loop),其应用的对象之一是在数组的依次存取上。foreach语法如下:
for(type element : array) {
System.out.println(element)...
}
直接以实例的方式来说明会更容易了解这个语法如何使用,在J2SE 5.0之前可以使用以下的方式来依次存取数组中的元素:
int[] arr = {1, 2, 3, 4, 5};
for(int i = 0; i < arr.length; i++)
System.out.println(arr[i]);
在J2SE 5.0中可以使用新的foreach语法,这么写:
int[] arr = {1, 2, 3, 4, 5};
for(int element : arr)
System.out.println(element);
每一次从arr中取出的元素,会自动设定给element,您不用自行判断是否超出了数组的长度,注意element的类型必须与数组元素的元素类型相同。
如果是对象,作法也类似。例如若存取字符串数组,可以编写如下:
String[] names = { "caterpillar ", "momor ", "bush "};
for(String name : names)
System.out.println(name);
那么二维数组呢?基本上要是了解数组本身就是一个对象,自然就会知道如何存取。举个例子:
int[][] arr = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
for(int[] row : arr) {
for(int element : row) {
System.out.println(element);
}
}
style= "font-family:宋体 "> 三维以上的数组使用foreach的方式来存取也可以依此类推。
--摘自《Java JDK5.0 学习笔记》
------解决方案--------------------学习了