1、方法:java中的方法类似于其它语言的函数,方法是解决一类问题步骤的组合,表示一种功能和行为.
Java里的方法不能独立存在,所有的方法必须定义在类里。
方法声明格式:
[访问权限修饰符 修饰符…] [返回值类型] 方法名(形式参数类型 参数名){
Java语句;… … …
}
• 修饰符:这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。
• 形式参数: 在方法被调用时用于接收外界输入的数据。
• 返回值类型:事先约定的返回值的数据类型,如无返回值,必须给出返回值类型void。
• 方法体:方法体必须有{}括起来,在{}中编写完成方法功能的代码
• 返回值:方法在执行完毕后返还给调用它的环境的数据。
• 实参:调用方法时实际传给方法的数据。[return 返回值;]
方法的调用:类名/对象名.方法名(实参列表)
注意:return语句有两种使用方法
(1)return 值; //将值返回,方法必须声明有返回值
(2)return; //不返回任何值,表示终止方法执行,可以在声明为void的方法中使用
2、数组
定义:在java中,数组本身是引用数据类型,是一个对象,数组可以存储基本数据类型,也可以存储引用数据类型
数组的创建:声明数组:(1)数据类型 [] 数组名字 例如:int [] a
(2)数据类型 数组的名字 [] 例如: int a []
(建议使用第一种,不然会混淆变量的数据类型)
创建方式:(1)创建一个容量为5的一个数组,使用默认值对其进行初始化
int[] ary0 = new int[5];
(2)创建数组同时将其用指定的值初始化
int[] ary1 = new int[]{1, 2, 3, 4, 5};
方式2还可以简化为下面写法 int[] ary2 = {1, 2,3,4,5}
访问数组元素:数组名【索引】
获取数组长度: 数组名.length
数组的迭代(增强版):
int [] b1 = new int []{1,2,3,4,5,6,7}; for(数组元素的类型 临时变量名字 :数组的名字){ System.out.println(临时变量名字 ); } //即: for(int x : b1){ System.out.println(x); }
两种简单排序:
package day01; import java.util.Arrays; public class array { //数组元素的遍历操作 public static void main(String[] args) { //冒泡排序:每次取出两个相邻元素进行比较 //外层循环控制比较几次,内层循环控制每次比较的趟数 int [] b = {5,4,3,2,1}; for(int i = 0;i < b.length - 1;i++){ for(int j = 0;j < b.length - 1 - i;j++){ if(b[j]>b[j + 1]){ int t = b[j + 1]; b[j + 1] = b[j]; b[j] = t; } } } System.out.println(Arrays.toString(b)); //选择排序: //假设第一个元素为最大/最小值,用第一个位置上的元素与后面所有元素进行比较,满足条件,交换位置 int [] a = {5,4,3,2,1}; for(int i = 0;i < b.length - 1;i++){ for(int j = i + 1;j < b.length;j++){ if(a[i]>a[j]){ int t = a[j]; a[j] = a[i]; a[i] = t; } } } System.out.println(Arrays.toString(a)); } }
二维数组:
1、定义:一个一维数组,其元素又是一个一维数组,例如:
int [][]a = {{1,2,3},{1,2,3},{1,2,3}};
二维数组其实就是一个矩阵,但其存储本质还是线性的
对于二维数组的遍历:外层循环控制行数,内层循环控制列数