5:二维数组定义格式?
数据类型[][] arr = new 数据类型[一维数组的个数][每个一维数组元素的个数]
int[][] arr = {{23,45,56},{2,45},{7}}
int[][] arr = int[5][]
看懂针对每种格式的内存图解?
6:案例
A:二维数组遍历
class Noname4 {
public static void main(String[] args)
{
int[][] arr = {{11,22},{33,44},{55,66}};
for (int i = 0; i <arr.length; i++) {
for (int j = 0; j < arr[i].length;j++ ){
System.out.print(arr[i][j] + " ");
}
}
}
}
B:公司年销售额求和
某公司按照季度和月份统计的数据如下:单位(万元)
第一季度:22,66,44
第二季度:77,33,88
第三季度:25,45,65
第四季度:11,66,99
class Noname4 {
public static void main(String[] args)
{
int[][] arr = {{22,66,44},{77,33,88},{25,45,65},{11,66,99}};
int sum = 0;
for (int i = 0; i <arr.length; i++) {
for (int j = 0; j < arr[i].length;j++ ){
sum = sum + arr[i][j];
}
}
System.out.println(sum);
}
}
7:参数传递问题
基本数据类型的值传递,不改变原值,因为调用后就会弹栈,局部变量随之消失
引用数据类型的值传递,改变原值,因为即使方法弹栈,但是堆内存数组对象还在,可以通过地址继续访问
Java中到底是传值还是传址?
两种说法:
1 既是传值,又是传址,基本数据类型传值,引用数据类型传址.
2 只传值,因为地址值也是值(出去面试都说这种,支持者是高司令(java之父))
|
|