目录
1 数组是引用数据类型
2 数组内存分析
同一块堆内存可以被多个栈内存所指向,而多个栈内存可以对同一个堆内容进行修改操作。
3 可变参数
可以接收不定量的多个参数
public class demo01 {
public static void main(String[] args) {
demo01 demo01 = new demo01();
demo01.not_one(1,2,3,4,5);
}
public void not_one(int... arr ){
int sum = 0;
for(int x :arr){
System.out.print(x);
sum+=x;
System.out.println("\t"+sum);
}
}
}
计算器的例子:
class calc{
public int fun(String a,int... arr){
int ans=0;
switch(a){
case("+"):{
for(int x:arr){
ans+=x;
}
break;
}
case("-"):{
for(int i : arr){
ans-=i;
}
break;
}
case("*"):{
ans = 1;
for(int i:arr){
ans*=i;
}
break;
}
case("/"):{
ans = 1;
for(int i:arr){
ans/=i;
}
break;
}
default: return ans;
}
return ans;
}
}
4 对象数组
对象数组:数组分为基本数组和引用数组。以类对象为例,保存多个类对象就可以通过对象数组的形式来完成。
- 动态初始化:类名称【】 数组名=new 类名称【长度】
- 静态初始化:类名称【】 数组名=new 类名称【】 {对象实例,对象实例,对象实例。。。}
所有动态初始化之后,它的元素都是null,因为引用数据类型的默认值都是null。
package Li.Array;
class book{
private String name;
private String suto;
private double price;
public book(String name,String suto,double price){
this.name = name;
this.suto = suto;
this.price = price;
}
public String getInfo(){
return "图书名称:"+this.name&