方法及方法参数传递

1.方法
(1)概念作用
1.概念:方法,也叫函数,但是一般在java中都叫方法,可以看成是一个可以完成独立功能的代码块,可以反复使用,每次使用都是独立的!存在于类的结构体

1)X + Y = Z;代入不同的值,可以求到不同的结果
2)函数可以反复使用的!每次使用都是独立的
3)完成了一个独立的功能

2.作用:完成功能,数据的处理!方法可以拿来反复使用。每次使用都是独立的
(2)认识方法+语法
认识方法
1)public static修饰符
a)修饰给与特殊意义
2)void:此处位置返回值类型,void 表示没有返回值
返回值类型必须与返回值的数据类型一致
3)main:方法名字,可以更改
4)(String[] args) : 一个形式参数,String[] 数据类型 args形式参数名字
a)形式参数: 本质没有值的;可以看成是有值的,在方法的内部完成功能的设计
5){}:方法的结构体
a)完成功能的设计
6)存在于类的结构体

方法的语法:
返回值类型 方法名字( 形式参数 ){
}
1)返回值: 必须有
2)方法名字:必须有
3)小括号: 必须有
4)形式参数:根据需要设定,也可以没有形式参数
a.方法可以看成完成功能的代码块
b.举例说明:代码块看成豆浆机
a)豆浆机会有入口[ 说明 :放绿豆 黄豆 豆豆 ]
5)大括号: 必须有: 但是功能语句可以任意写
(3)设计方法+方法使用
设计一个方法
需求:完成两个整数求和
步骤:
1.方法语法中,返回值 方法名字,参数列表(根据需要)
2.方法内部完成功能设计[ 求和 ]

方法的使用
1.使用方法的三种方式
1)方法有static修饰:类名.方法名+参数列表[个数,顺序,类型必须一致]
2)方法没有static修饰:对象名.方法名+参数列表[个数,顺序,类型必须一致]
3)方法在同一个类中:方法名+参数列表[个数,顺序,类型必须一致]
a)+参数列表: 传入对应类型的数据

2.注意事项:
1)对于方法的使用者而言,无需关心方法内部的实现
2)同一个类中:静态方法不能调用非静态的方法
同一个类中:非静态方法可以调用静态方法
(4)方法签名+方法重载
方法签名:
1)需求:在同一个;类设计一个方法完成三个整数求和
2)思考:在一个类中是如何找到的一个方法
3)概念:方法名字+参数列表[类型,个数,顺序:必须一致]

方法重载:
1)思考:在同一个类中如果在设计一个方法求两个整数的和会怎么样?
概念:在同一个类中,方法名字相同,参数列表不同
(5)方法return
方法return
1)思考:如果方法运算的结果,还需要跟其他数据进行运算怎么办?
① 方式:将方法运算的结果返回给方法调用着,方法内部将运算结果使用语句:
return 值/变量/表达式;
② 方法返回值的位置,必须写与方法内部返回值的数据一致的数据类型
③ 注意:返回的是数据,不是变量或者表达式
④ 方法返回值的结果,怎么使用?
注意事项:有返回值方法,一定要有对应返回语句

结论:
①如果一个方法的返回类型不是void,那么要求[不管方法里面做了什么事情]
都必须返回一个和返回值类型匹配的值
②对于结构体语句中写返回值:编译检查语法,只看结构不看值:
结构体中写了返回值不一定执行的到,编译语法会不通过!
2.数组
(1)数组的概念

数概念:数组可以理解成在计算机中的多个连续的存储空间,里面可以按顺序存放多个类型相同的数据。

1)数组名 : 数组的名字
2)数组元素 : 就是存放在数组里面的数据
3)数组索引 : 就是数组里面连续存储空间的编号,从0开始
4)length : 数组的属性长度 数组名.length拿到数组的长度
(2)组的基本语法及使用
1.动态创建之声明的同时赋值
数据类型 [] 数组变量名 = new 数据类型[数组长度];
int[] arr = new int[10];
(3)认识数组的本质
(4)JVM堆栈图【引用】
JVM堆栈图:内存
Jvm:Java虚拟机
数组引用数据类型,一个数字名,持有一个数字的地址值
(5)数组的特点
数组的特点:
1.一个数字一定定义好,数组长度不变
2.一个数组的数据类型,限定了数组存储空间,可以存储数据的类型
3.一个数组的存储空间,根据数据类型,为存储空间分配默认值
(6)数组的常见问题
1)数组索引越界【索引有哪些,索引的范围?(所有数组都有一个length属性)】
2)空指针错误
3)如果有返回值,不知道return写在哪里
(7)数组的遍历
打印数组:希望可以把一个数组里面的数据都打印出来
1.遍历数组:每次都写代码,遍历数组很恶心
2.设计一个方法【打印数组】[1,2,3,4,5,6,7,8]
3.打印数组
(1)普通手动遍历
1)定义一个方法print,方法参数修改为int 数组(变量名为arr)
2)方法里 使用 for循环 遍历数组,使用System.out.println打印
3)main方法里创建一个数组,然后调用方法print方法
4)打印结果换行了,但是我们要求打印一行,所以使用System.out.print
5)但是我们要求打印用 逗号 分割,所以System.out.print(arr[i]+”,”)
6)前后要求还有个 中括号,所以我们加上打印 [ 和 ]
(2)直接打
(3)字符串拼接之后打印
1)修改上面的代码
2)打印的内容拼接成字符串,先定义一个字符串str
3)修改用str拼接打印结果
4.方法参数传递
(1)值传递
1.方法的参数传递
使用一个方法的时候,传递数据
1.基本数据类型:传递的是值的本身
2.引用数据类型:传递的是一个引用地址
(2)值引用
1.值引用:
一个方法,传递引用类型数据
例如:
int[] arr = new int[];
使用如下方法
print(arr);//传递的是arr持有的该数组的引用地址

public static void print(int[] arr){
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值