1.循环
1.1 do....while 直到型循环,具体说就是,执行循环体,直到条件不满足时结束循环.
1.2 while 当型循环 当条件满足时进入循环.
1.3 for 遍历型循环
2.循环的使用情形
明确了循环的停止条件时一般用while比较多
遍历数组的时候 使用for循环
3.break与continue
3.1 它们是用于终止循环的,即无论满足条件与否均可终止循环.
3.2 区别:
break用于结束当前循环.
continue:用于结束当前循环并继续执行下一次循环.
4.嵌套for循环---两种基本的三角形状
private static void fun1() {
/*
* 外层循环控制:一共有多少行
* 内存循环控制:每一行 有多少个元素
* 尖向下的三角形
* *****
* ****
* ***
* **
* *
* 修改内循环 初始值部分
*/
for( int i =0; i < 5; i++){
for(int j = i; j <5 ; j++){
System.out.print("*");
}
System.out.println();
}
}
private static void fun3() {
/*
* *
* **
* ***
* ****
* *****
* 尖向上的三角形
* 修改 内循环 判断条件
*/
for(int i = 0; i < 5 ; i++){
for(int j=0; j<= i; j++){
System.out.print("*");
}
System.out.println();
}
}
5.函数
函数的定义:封装了特定功能的 代码块
函数的好处:有效地减少了重复代码 提高了开发的效率
函数的写法:
参数列表
关键字 返回值类型 函数名(参数类型1 参数名1,参数类型2 参数名2,......){
函数体(函数中的语句)
return 返回值;
}
没有返回值 使用 void
函数的书写位置:
1.必须在类中
2.不能在函数中定义函数
编写函数步骤:
1.确定有没有参数
2.确定返回值类型
函数的重载:实现了相同的功能 但是内部实现不同
就可以使用函数重载
是不是函数的重载 只跟参数有关
(只跟参数的类型 参数顺序 参数个数)
跟函数的返回值类型 和 函数的实现 无关
return后面可以不跟返回值
作用:直接结束这个函数
6.递归函数
函数部分 调用一个跟自己相同名字的函数(自己调自己)
public class Demo08 {
//编写 4! 阶乘
public static int fun(int n) {
// 注意:递归函数都需要一个出口
if (n == 1) {
return 1;
}
// 4 * 3 *2 *1 传进来的数 自减
return n * fun(n - 1);
}
7.随机数Math类
double random = Math.random();
返回的随机数 范围[0,1)
公式:*(Max-min +1) +min
打印[5,10]
double random = Math.random();
int r =(int)(random*(10-5+1)+5);//将double类型进行强转换
System.out.println("random是"+r);