Day9 学习分享 - 方法的总结和数组初识

1. 方法的总结
1.1 方法的三要素
返回值:
	当前方法运行后对外的数据产出

方法名:
	明确告知用户当前运行的方法是哪一个, 执行的结果是什么

形式参数列表:
	方法运行所需的外来数据
1.1.1 方法名
格式:
	1. 只能用英文字母(A ~ Z  a ~ z), 数字(0 ~ 9) 还有下划线
	2. 见名知意, 动宾结构
	3. 小驼峰命名法
1.1.2 返回值
1. 根据需求分析过程来决定是否需要返回值.
2. 返回值的数据类型
3. 返回值的数据含义
4. 返回值每一次有且只能返回一个数据
1.1.3 形式参数列表
形式参数实际上是在对于方法分析过程中, 了解方法运行需要的必要参数, 并且在参数使用必要性上做论证.
1.2 方法的完成过程
1. 需求分析
    方法名, 形式参数列表, 返回值类型

2. 考虑方法的执行流程
	可以采用注释辅助完成方法的执行流程
	
3. 实现代码
	按照注释完成代码
	【不要头铁】 【不要自大】 【认清自我】 【知错就改】

4. 验证
	代码运行验证, 正确参数情况, 运行结果怎么样, 错误参数情况, 代码反馈是什么
	代码的稳定性, 健壮性, 安全性
	【方法中需要使用参数合法性判断】
2. 数组
2.1 生活中的数组
图书馆
	存放图书
		社科类, 文学类, 管理类, 小说类, 历史类...
		相同的书籍会存放于一个书架上 【同一个位置】
		每一本书都有一个唯一的编号 【同样的称呼】
			同样的书有10本, 都会有一个唯一的索引 w-101-01 ~ w-101-10 【唯一索引】
			
通过图书馆我们可以概括		
	1. 存储位置一致, 并且连续
	2. 有统一的称呼, 方便管理
	3. 存在唯一索引, 具有一定的唯一性
2.2 开发中的实际情况
开发中一定存在对于大量相同数据处理的过程!!!

如果按照单一变量的定义方式, 会导致:
	1. 代码冗余
	2. 代码维护性极差
	3. 代码可操作性极差
	4. 代码阅读性极差
	
	这里可以模仿生活中的案例如图书馆, 把这些同一个数据类型的数据存放在一起方便管理和使用, 引入数组使用的场景和概念
2.3 Java中创建数组的方式
格式:
	int[] array = new int[10];

/*
赋值号左侧:
	int:
		告知编译器, 这里创建定义的是一个int类型数组, 有且只能保存int类型数据, 保证数据类型一致化
		
	[]:
  		告知编译器, 当前定义的数据类型是一个数组类型
  		
    array:
        1. 这里是一个数组名, 操作数组的核心数据!!!
        2. 数组名 array是一个【引用数据类型】

赋值号右侧:
	new:
		new关键字需要在计算机中申请【连续内存空间】,这块区域在内存的【堆区】
		【生活案例】这里就好比, 顾客找仓库管理员申请货架, 管理员一定是给你一整个连续区域供你使用
		
	int:
		前后呼应, 告知编译器这里能够存储的数据类型是int类型, 其他类型都不可以, 要求数据类型一致化
		
	[10]:
		告知编译器当前数组的【容量 capacity】是多少, 这里是10, 也就是说当前数组中有且只能保存10个int类型		  数据
*/
2.4 定义数组和使用
定义数组:
	int[] array = new int[10];

需要操作数组中哪一个元素, 这里需要使用数组的【下标】
    计算机内数据的开头都是从0开始, 数组容量为10的情况
    有效下标的范围
    	0 ~ 9
    	0 ~ 数组容量 capacity
    
操作格式:
	数组名[有效下标]
例子:

class Demo1 {
	public static void main(String[] args) {
		// 这里定义一个int类型的数组, 数组的容量为10
		int[] array = new int[10];
	
		/*
		给数组中下标为0的元素赋值
		格式:
			数组名[有效下标]
		*/
		array[0] = 10;
	
		/*
		给数组中下标为5的元素赋值
		*/
		array[5] = 20;
		
		/*
		给数组下标为10的元素赋值30
		10 已经超出了有效下标范围 0 ~ 9
		Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
        at Demo1.main(Demo1.java:23)		  数组下标越界异常
		array[10] = 30;
		*/
		
		/*
		取出数组中下标为0和下标为5的元素的内容
		*/
		System.out.println("array[0] : " + array[0]);
		System.out.println("array[5] : " + array[5]);
		// System.out.println("array[1] : " + array[1]);
	}
}
2.5 数组内存分析图

在这里插入图片描述

2.6 数组和循环的联系使用
例子:

class Demo2 {
	public static void main(String[] args) {
		// 定义一个int类型数组 容量为10
		int[] arr = new int[10];
		
		/*
		数组名.length
			获取当前数组的容量, 获取数组的【属性】
		*/
		for (int i = 0; i < arr.length; i++) {
			// 给数组中每一个元素赋值操作
			arr[i] = i + 1;
		}
		
		for (int i = 0; i < arr.length; i++) {
			System.out.println(arr[i]);
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值