方法:
修饰符 返回值类型 方法名 (){}
返回值问题:
如果需求分析得到方法不需要返回调用,而是输出到控制台,显示出来,则不需要返回值,
如果分析需要有返回值,被调用,则需要有返回值。
return的用法:
1.结束方法
2.返回值,同时也结束方法
参数问题:
就是方法与方法直接数据的传递和调用。
综合案例:
1.新建项目 进行测试
2.需求分析
实现需求的具体功能
3.实现菜单栏功能
方法:
并列
修饰符 返回值类型 方法名(){}
4.实现选择功能
方法:
并列
修饰符 返回值类型 方法名(){}
实现键盘输入功能 Scanner类
选择判定语句 满足特定的条件 对应特定的功能,
5.实现数据加载功能
方法:修饰符 返回值类型 方法名 (){}
定义一个数组,用来存储所需要的数据
方法的类型为数组类型 返回一个存储数据的数组的地址 用于其他方法的调用
6.实现查看功能
方法:
修饰符 返回值类型 方法名(){}
实现有参int arr[};用于循环输出数组中的数据;
7.实现修改的功能
方法:
修饰符 返回值类型 方法名(){}
实现键盘输入 来获取要修改的内容,使得旧值变为新值
8.实现添加功能
方法:
修饰符 返回值类型 方法名(){}
实现控制台输入功能,把输入的数据存储到数组中
9.实现删除功能
方法:
修饰符 返回值类型 方法名(){}
实现控制台的输入 ,找到对应数组中的数值 进行删除
10.实现退出功能
方法:
修饰符 返回值类型 方法名(){}
代码:
import java.util.Scanner;
public class demo2 {
public static void menu() { //实现菜单方法
System.out.println("1:查看"); //新建项目 需求分析
System.out.println("2:修改"); //输出菜单栏
System.out.println("3:添加");
System.out.println("4:删除");
System.out.println("5:退出");
System.out.println("请选择1---5");
}
//实现选择代码
public static void choose() {
//实现选择功能
//int arr [] = new int [20];
int arr[]=init(); // 定义一个新的数组来接收init()方法返回的数组的地址 , 这样栈内存就存在了一个加载数据的数组了
//init(arr);
Scanner sc = new Scanner(System.in);
while(true) {
menu();//调用菜单的方法 来显示菜单
int n =sc.nextInt();
if(n==1) {
show(arr); // 调用方法,来接收显示加载数组中的数值
//System.out.println("查询功能以实现------");
}else if(n==2) {
update(arr);
//System.out.println("修改功能以实现------");
}else if(n==3) {
add(arr);
//System.out.println("添加功能以实现------");
}else if(n==4) {
delect(arr);
//System.out.println("删除功能以实现------");
}else if(n==5) {
Go();
//System.out.println("你已经退出了------");
break;
}
}
}
//数据加载功能
public static int[] init() { //有返回值 ,返回给方法调用数组中的存值 //无参
int [] arr = new int [20];
arr[0]=1;
arr[1]=2;
return arr; //加载存储数据 返回数组的地址
}
//实现查看功能
public static void show(int arr[]) {
for (int i = 0; i < arr.length; i++) {
if(arr[i]!=0) {
System.out.println(arr[i]);
}
}
}
//实现修改方法功能
public static void update(int arr[]) {
Scanner sc = new Scanner(System.in);
System.out.println("请您输入要修改的商品编号");
int id = sc.nextInt();
//查看
for (int i = 0;i<arr.length ; i++)
{
//所有的数据
if (arr[i] == id)
{
System.out.println("请您输入新的编号");
arr[i] = sc.nextInt();
System.out.println("您已修改成功");
break; // 终止循环
}
}
}
//实现添加的功能
public static void add(int arr[]) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入新的商品编号");
int id = sc.nextInt();
//找到为0 ,没有数据
for (int i = 0;i<arr.length ; i++)
{
//所有的数
if (arr[i] == 0)
{
arr[i] = id;
System.out.println("您已添加成功");
break; // 终止循环
}else if(arr[i]!=0){
System.out.println("内存空间已经满了");
break; // 终止循环
}
}
}
//实现删除功能
public static void delect(int arr[]) {
Scanner sc = new Scanner(System.in);
System.out.println("请您输入要删除的编号");
int id = sc.nextInt();
for (int i = 0;i<arr.length ; i++)
{
//所有的数据 id
if (arr[i] == id)
{
arr[i] = 0;
System.out.println("您已删除成功");
break;
}
}
}
//实现退出功能
public static void Go() {
System.out.println("您已成功退出");
}
public static void main(String[] args) {
// menu();
choose();
}
}
方法的执行流程过程: