[2017.10.2]数组&方法

本文深入讲解了一维数组和二维数组的概念、初始化方式及其使用方法,同时介绍了方法的基本定义、参数传递方式及返回值类型等内容。
一. 数组
1.定义: 
用来一次性保存多个相同类型元素的这样一种数据结构.
2.维度:
一维数组,多维数组.

二.一维数组
1.方法:
类型 [] 数组变量名称
int [] arr;或者int arr[];

2.初始化:
①动态初始化:
在定义一个数组和对数组进行赋值的操作时分开来执行
//动态初始化
int [] arr = new int[3];

arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
②静态初始化:
在定义一个数组的同时,进行数组的初始化
int []arr1 = new int[]{1,2,3};
int []arr2 = {1,2,3,4};


3.new:

用来初始化一个对象
length:
int a[] = new in[3];
int size = a.length;


4.注意事项:
a. 数组长度一旦指定,是永远不可以改变的
b. 数组保存的元素类型一旦指定,不可以改变,并且只能保存该类型的元素

5.数组元素的访问
arr[index]: index表示数组元素的索引,从0到length-1
arr[1]:访问第二个元素
index: 可以是常量,也可以是表达式。


6.练习:定义一个保存10个整形元素的一维数组,其中值为1到10,分别求这十个数的和,以及十个数的平均值,
以及俩俩相邻的差,最终的和。

public class Exercise1 {
public static void main(String[] args){
int [] arr = {1,2,3,4,5,6,7,8,9,10};
int sum = 0;
int sumALL = 0;
double average = 0.0;


for(int i = 0;i<arr.length-1;i++){

sumALL += arr[i];
sum+=(arr[i]-arr[i+1]);
}
sumALL += arr[arr.length-1];
average = 1.0*sumALL/arr.length;


System.out.println(average);

System.out.println(sum);
System.out.println(sumALL);
}
}


7.选择排序
①方法:
选择特定的数,之后进行交换.
特定的数: 小的数
②算法:
 从左至右,依次比较当前的数和后面的数的大小关系,如果满足排序条件,那么保持不变,否则做一个交换操作
③练习:
public class Exercise2 {
public static void main(String[] args){
int[] arr = {5,8,4,1,2,5,9,6,3,4};
//由大到小排序
for(int i=0;i<arr.length;i++){
for (int j=i+1;j<arr.length;j++){
if(arr[i]<arr[j]){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
}
 
 
三.二维数组:

1.声明:
类型 [][] 数组名称;
int [][] arr;

2.初始化:
①动态初始化
int [][]arr = new int[3][];
②静态初始化
int [][]arr = {{1,2,3},{2,3,4,5}};

3.length:
这个属性拿到二维数组的长度


四. 方法

1.定义: 

实现一个功能的代码片段的封装。


2.方法:

[修饰符...] 返回值类型 方法名称(形参的列表){

//方法中实现的逻辑
}


3.形参列表: 

方法接收外部传入的数据的接收媒介.


4.返回值:

方法执行结束之后,返回的值的类型.

如果方法不需要返回任何的值,那么方法返回类型写作void.
在方法里返回一个值,需要用到 return. 


5.形参列表:
当我们定义了一个方法之后,去调用方法的时候,一定要注意传递给方法的入参的类型和数量要一一对应


6.唯一确定一个方法:
①关注点:
a.方法名是否一致
b.形参列表的所有参数类型和数量是否一致。 对于形参变量的命名,完全是没有关系的.
c.返回值的类型:
可以是基本类型,也可以是引用类型
②注意:
a.一旦明确指定了方法的返回类型(非void),那么一定要保证最终方法可以成功的返回我们对应的返回类型的数据.
b.关于void返回类型:
如果不主动的添加return语句,在执行的时候,会自动添加return.

c.方法参数的传递:

方法参数的传递来说,基本类型传递的是值。对于引用类型,传递的是引用(传递的是地址)


7.练习:

public class MethodDemo1{

public static void main(String[] args){

}

public static void testVoid(){

while(true){

break;

}

int i = 0;

int b = 3;

}

public static int testReturn(){

int i = 0;

int j = 2;

if(i==0){

if(j>1){

return 1;

}

}else{

return 2;

}

return 4;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值