当前位置: 代码迷 >> 综合 >> 小东吖 之 java的基础知识以及break 和 continue 关键字的使用
  详细解决方案

小东吖 之 java的基础知识以及break 和 continue 关键字的使用

热度:37   发布时间:2023-10-22 11:39:52.0

一、break和continue关键字的使用

1, break 循环中作用 跳出(结束)循环

有代码才会有真相

// break关键字
注意: break跳出循环 在break后面写任何的代码
// 都无法执行 所以没有意义 报错
// 如果break在 分支语句中 那么break的后面可以写代码
// 因为这个分支语句 有可能不被执行for(int i = 0;i < 8;i++){if(i == 4){break; // i == 4时,结束本次循环}
}
System.out.println(i);

结果

0
1
2
3

2, continue 循环中作用 立即结束本次循环 继续执行下一次循环

continue 关键字
for(int i = 0;i < 8;i++){if(i == 4){continue; // 当i == 4 时,跳出本次循环,继续执行下一次循环}
}
System.out.println(i);

结果

0
1
2
3
5
6
7

在这里我顺便提下最大值

比如 打印[0, 100]中是7的倍数中的值最大那个数int max = 0;for (int i = 100; i >= 0; i--) { // 注意闭区间if (i % 7 == 0) {max = i;break; // 因为反着输出100-0 第一进来分支语句的值 就是最大值//这时可以直接停止循环}}System.out.println(max);

二 、随机数

随机数 是Math类的随机数
一、java.lang.Math.Random;
调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。例子如下:

public class Demo02 {public static void main(String[] args) {// 结果是个double类型的值,区间为[0.0,1.0)System.out.println("Math.random()=" + Math.random());// 注意不要写成(int)Math.random()*7,这个结果为0,因为先执行了强制转换int num = (int) (Math.random() * 7);System.out.println("num=" + num);}}

结果

Math.random()=0.02909671613289655
num=0

还有一个就是要注意
求[5,10] 的整数

// 计算随机数公式 (最大值 - 最小数 + 1) + 最小值
for(int i = 0,i < 6;i++){
int number = 6 * Math.random() + 5; //区间[5,10]
System.out.println(number);
}

三 、函数

1.什么是函数?
对于功能相同的代码,为了简化代码的书写,可以将功能相同的代码提取出来,为了可以方便多次重复使用,在Java中,使用函数【方法】来体现 也就是封装了 特定功能的 一个代码块

函数就是对一段具有特殊功能代码段的抽取,又被称为方法
函数存在的意义:提高程序的复用性和可读性

2 . 函数的好处: 方便的使用 提供了写代码的效率 减少了大量重复的代码的编写
3. 函数的结构 定义:

关键字 函数返回值类型 函数名(参数类型 参数1 , 参数类型 参数2 ,...){函数的语句return 返回值;}

举例:

public static void main(String[] args) { // void 没有返回值的类型}

4 . 函数书写的位置

 注意: 一定要写在类中 (只有类中 才能写函数)思考: 函数中 能不能 写函数 ? 不能

5 函数怎么去提取呢?(如何去编写一个函数?)

1. 确定编写的函数 有没有返回值 返回值的类型是什么
2. 确定编写的函数 有没有参数 参数是几个

6 函数的分类

1. 有参数 有返回值
2. 有参数 没返回值
3. 没参数 有返回值
4. 没参数 没返回值

举例:

// 有参数 有返回值
public static int sum(int a , int b) {int sum = 0;sum = a + b;return sum;}
// 有参数 无返回值
public static void lai(int a ,int b) {for (int i = 0; i < a; i++) {for (int j = 0; j < b; j++) {System.out.print("* ");}System.out.println(" ");}
// 没参数 有返回值public static int a(){return 1;
}  
// 无返回值 无参数
public static void dance() {System.out.println("大起大落摇");}

7 .函数的调用

如果要使用一个函数中的功能的时候,就需要手动调用这个函数
格式:函数名称(参数);
如果没有参数,格式:函数名称();

例如

public static void lai(int a ,int b) { //函数for (int i = 0; i < a; i++) {for (int j = 0; j < b; j++) {System.out.print("* ");}System.out.println(" ");}public static void main(String[] args) {
System.out.println("请输入几行 几列"); int x = sc.nextInt();int y = sc.nextInt();lai(x , y); // 调用函数
}
注意:
a.main函数作为一个程序的入口,要想自定义的函数被执行,应该在main函数中直接或者间接的进行调用
b.main函数中只能调用其他的函数,不能定义函数
c.在自定义的函数之间也是可以进行相互的调用的,但是在自定义的函数中不能调用main函数

8 .函数的调用的时候各个函数的执行顺序

a.JVM首先去调用main函数,所以main函数作为程序的入口函数第一个被执行
b.main函数中的代码从上往下依次执行
c.如果main函数在执行的过程中,遇到了被调用的函数,main函数中的代码会暂停在这个地方,会进入到自定义的函数中,当自定义中的代码执行完成之后,再次返回到原来暂停的地方,接着向下执行

给大家演示下:

package com.lanou3g;public class day04lx {//演示函数的调用的顺序public static void show1() {System.out.println("show1方法被调用");//间接show2();}public static void show2() {System.out.println("show2方法被调用");}public static void main(String[] args) {//直接show1();}}

8.函数的重载

函数的重载: 在定义函数中 参数名 相同 但是参数不同注意: 函数是不是重载 只跟函数的参数有关
(跟参数的个数 参数类型 参数顺序 有关 跟参数名无关 跟返回值 无关) 
前提: 相同功能
把相同的功能 但是参数 和 内部实现不同的函数 起相同的名字 是函数的重载

举例:

public static int abs(int a) {int b = 0;if (a > 0) {b = a;}else {b = -a;}return b;}// 函数名相同 abs 参数类型不同 public static double abs( double a ) {double b = 0;if (a > 0) {b = a;}else {b = -a;}return b;}
  相关解决方案