函数:

函数是一段可以反复使用的完成特定功能的代码

应定义在类的内部,其他的任何函数的外面。一个类中,多个函数的顺序是无关紧要的

函数:由代码构成,完成特定的任务

语法

声明函数并实现

修饰符 返回值类型 函数名(参数列表){

//实现代码块

}

Eg:public static void printLine(){}

函数的位置

类之内,其他函数之外

调用

需要使用自己定义的函数的位置

函数名(参数列表);

Eg:printLine();

函数的调用流程

遇到函数调用,根据函数名和参数列表找到相对应的函数

先执行函数内部的实现代码,执行完毕

重新回到函数调用处

继续主函数执行

参数

多数情况下,调用者与函数之间都会有数据的交互,只有调用者传入对应的数据,函数才会执行相应的功能,调用者传入的数据叫做参数

语法:

修饰符 返回值类型 函数名(参数列表){//告知调用者执行这段函数需要什么数据

//实现代码块

}

(形参):参数可以使所有类型的数据,相当于声明局部变量  数据类型 变量名

函数名(实参);实参相当于给函数的形参赋值,类型必须和形参保持一致

形参可以是所有的数据类型,不限制个数,赋值时必须对应类型和长度进行复制,多个参数间,用 , 隔开

声明除:(Int a, double  b, boolean c)

调用处:(10,11.0,true)

注:函数调用处的实参到函数声明处的形参,可以进行自动类型转换的可以认为是对应类型

函数的形参相当于函数内部有效的局部变量 。

形参,形式参数。 多个形参用逗号隔开;

如果两个形参是相同类型的,不能省略

函数返回值:

语法:

修饰符 返回值类型 函数名(参数列表){//返回值类型可以是所有数据类型

//实现代码块

Return 数值;//return后面跟的数值必须符合返回值类型

}

调用处语法:

返回值类型 变量名=函数名(实参);

用在有返回值的函数中,表示指定返回某个值

用在没有返回值的函数中,表示结束当前函数

一个函数只能有一个return值,且return语句放在函数的最后一句

如果函数中出现分支结构,每个分支都需要有返回值

函数的三要素分别是返回值类型、函数名、参数表 。

函数执行流程:

调用函数:函数名(实际参数);

实参会依次给形参赋值调用函数,程序流程会进入函数,函数返回,程序流程会返回到函数调用点。

调用函数可以看成一个表达式,eg:int result = add(10,20);

实参给形参赋值,进入调用的函数,再返回到程序中

使用函数的作用:

避免重复代码

提高程序的可维护性

提高程序的重用性

提高程序的灵活性

写一个函数 add,接受两个整数作为参数,返回这两个整数的和 。

public class TestF{
//9.(编程)写一个函数 add,接受两个整数作为参数,返回这两个整数的和 。
public static void main(String[] args) {
System.out.println(add(10,5));
}
public static int add(int a,int b){
return a+b;
}
}

写一个函数,接受一个整数参数 n,输出 n 个 HelloWorld 。

public class TestF2{
//写一个函数,接受一个整数参数 n,输出 n 个 HelloWorld 。
public static void main(String[] args) {
pr(5);
}
public static void pr(int n){
int i=1;
while(i<=n){
System.out.println("HelloWorld");
i++;
}
}
}

写一个函数,判断这个整数是质数还是合数,如果是质数,就打印“质数”如果是合数,就打印“合数”。

import java.util.Scanner;
public class zhishu{
//写一个函数,判断这个整数是质数还是合数,如果是质数,就打印“质数”如果是合数,就打印“合数”。
public static void main(String[] args) {
//定义输入
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int x=sc.nextInt();
//调用函数
zhi(x);
}
public static void zhi(int n){
//先判断n小于2时的情况;
if (n<2) {
System.out.println("合数");
}
//循环判断是否为质数,除1和它本身外没有余数为质数
for (int i=2;i
if (n%i !=0) {
System.out.println("质数");
}else{
System.out.println("合数");
//一旦发现是合数,直接跳出循环
break;
}
}
}
}

编程思想:

构建程序结构

解题思路

面向过程:从程序执行的过程入手,将完整的过程细分成多个子过程,再将子过程细化,逐步完成代码;

非结构化编程:goto,

结构化编程:引用函数的编程;

特点:自顶向下,逐步求精

面向对象思想:一切从事物对象本身作为问题出发点;