IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> java循环控制语句与方法(函数) -> 正文阅读

[Java知识库]java循环控制语句与方法(函数)

java循环控制语句与方法

方法定义

  • 方法:
    一段具有独立功能的代码块,不调用就不执行。可以提高代码的复用性
  • 方法需要定义在类中方法外,方法可以在方法中调用,但不能嵌套定义
  • 定义方法前首先要明确它的返回值类型与形参的个数和类型
  • 方法被调用时会进入栈中,这一过程叫做压栈,调用完后方法弹栈释放,遵循栈的先进后出原则

方法的定义格式

public static 返回值类型 方法名(形参){	//若没有返回值,通常写为public static void 方法名(形参)
	功能代码;
	return 返回值;
}
  • 方法的三种调用:
//没有返回值的方法
方法名(参数);
//有返回值
//直接打印返回值
System.out.println(方法名(参数));
//用一个变量接收返回值
返回值类型 变量名 = 方法名(参数);

方法的重载

  • 若两个或多个方法方法名相同,但参数类型不同或参数个数不同或参数顺序不同,我们称这构成了方法的重载
  • 方法的参数传递
    传递基本类型,记录的为"具体数值",形参的改变,不会影响实参
    传递引用类型,记录的为"地址值",形参的改变,会影响实参
    例:
//接收两个int类型的值并返回除商
public static int division(int num1, int num2){	
	return num1 / num2;
}
//接收两个double类型的值并返回除商
public static double division(double num1, double num2){ 
	return num1 / num2;
}
//接收三个double类型的值并返回除商
public static double division(double num1, double num2, double num3){
	return num1 / num2 / num3;
}

循环控制语句

  • continue:
    跳过本次循环,继续下次循环
  • break:
    跳出当前循环或指定循环
  • return
    使方法弹栈,结束当前方法

练习

  • 猜字谜小游戏,设置1-100,1-1000,1-10000四种难度,以及退出选项
    在猜数字的过程中也可随时返回难度选择界面
    代码:
import java.util.Random;
import java.util.Scanner;

public class GuessNum {
    public static void main(String[] args) {
        //创建键盘录入对象
        Scanner sc = new Scanner(System.in);
        //给while循环起一个名字lone
        lone:
       while(true){
           //提示用户并录入数据
           System.out.println("欢迎来到猜数字小游戏");
           System.out.println("1. 1-100难度");
           System.out.println("2. 1-1000难度");
           System.out.println("3. 1-10000难度");
           System.out.println("4. 退出游戏");
           int num1 = sc.nextInt();
           //选择难度并调用numGuess方法
           switch (num1){
               case 1:
                   numGuess(1,100);
                   break;
               case 2:
                   numGuess(1,1000);
                   break;
               case 3:
                   numGuess(1,10000);
                   break;
               case 4:
                   System.out.println("bye~");
                   break lone;  //跳出lone,即最外层while循环
                default:
                    System.out.println("请输入正确的选项");
                    break;
           }
       }
    }
    //数字猜谜小游戏方法
    public static void numGuess(int num1, int num2){
        //创建对象
        Scanner sc = new Scanner(System.in);
        Random r = new Random();
        int num4 = r.nextInt(num2) + 1;
        //欢迎欢迎
        System.out.println("欢迎选择难度为" + num1 + "到" + num2 + "猜数字小游戏,游戏开始!(输入10001回到初始选择界面)");
        while(true){
            //让用户输入一个整数
            System.out.print("请输入你猜的结果:");
            int num3 = sc.nextInt();
            //判断数据合法性
            if ((num3 < num1 || num3 > num2) && num3 != 10001){
                System.out.println("请输入正确的数字!");
                //判断是否退出
            }else if (num3 == 10001){
                break;
            }else{  //判断猜大猜小或猜中,猜中则提示并返回初始界面
                if (num3 > num4){
                    System.out.println("猜大了");
                }else if (num3 < num4){
                    System.out.println("猜小了");
                }else{
                    System.out.println("恭喜你猜中了");
                    break;
                }
            }

        }
    }
}
  • 定义两个方法,方法1可以求出一个整数数组内的最大值max与最小值min,方法2则由用户定义一个任意长度的数组并使用键盘录入数组的值,调用方法,求出用户自定义长度与元素的数组的最大值与最小值并打印
    代码:
import java.util.Scanner;

//定义一个方法, 可以同时获取一个int类型数组的max和min
public class MinMax {
    public static void main(String[] args) {
        //c
        //提示用户并使用creat方法创建一个整数数组
        System.out.println("请输入数组长度:");
        //创建对象
        Scanner sc = new Scanner(System.in);
        int num1 = sc.nextInt();
        int[] arr = creat(num1);
        //使用min_Max输出最大最小值
        System.out.println("min:" + minMax(arr)[0]);
        System.out.println("max:" + minMax(arr)[1]);
    }
    //定义方法minMax,接收一个int数组,返回值为一个数组
    public static int[] minMax(int[] arr){
        //定义两个变量接收最值
        int min = arr[0];
        int max = arr[0];
        //遍历并比较取出最值
        for (int i = 1; i < arr.length; i++) {
            if (arr [i] < min){
                min = arr[i];
            }else if (arr[i] > max){
                max = arr[i];
            }
        }
        int[] brr = {min, max};
        return brr;
    }
    //来写一个随意长度定义且赋值的数组方法吧
    public static int[] creat(int ber){
        //定义动态数组
        int[] arr = new int[ber];
        //创建对象
        Scanner sc = new Scanner(System.in);
        //提示并接收数据
        for (int i = 0; i < arr.length; i++) {
            System.out.println("请输入第" + (i + 1) + "个数");
            arr[i] = sc.nextInt();
        }
        return arr;
    }
}
  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章           查看所有文章
加:2021-10-28 12:16:13  更:2021-10-28 12:18:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/18 18:00:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码