do while循环
不管判断语句是否成立 都会先执行循环体一次
do{
循环体
}while(判断语句)
while(true){
}//这是一个死循环;为了跳出循环,循环体内部要用break语句来跳出.
例如.可以在循环体内部用if来判断,if(x==5); break;
for循环
for(声明循环增量;判断条件;增量++){
循环体
}
for循环的嵌套
外层循环控制:一共有多少行
内存循环控制:每一行 有多少个元素
例:
1. 尖向下的三角形
修改内循环 初始值部分
public class Demo03{
public static void main(String[] args){
for(int i=0;i<5;i++){
for(int j=i;j<5;j++){
System.out.print("*");
}
System.out.println();
}
}
2. 尖向上的三角形
修改内循环 判断条件
public class Demo03{
public static void main(String[] args){
for(int i=0;i<5;i++){
for(int j=0;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
}
break语句的作用是使流程跳出switch结构或用来从循环体中跳出,即提前结束这两种结构的处理,转而处理它们的后续语句;
continue语句的作用是用在循环体中,提前结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判断.
for循环--死循环
for (;;) {
System.out.println("我是死循环");
}
什么时候使用while for
明确了循环的停止条件时,一般使用while 比较多;遍历数组的时候 使用for循环.
随机数(Math类)
伪随机:通过一个计算的规则算出随机数
double random = Math.random();
返回的随机数 范围[0,1)
公式: *(最大值-最小值+1)+最小值
函数
函数定义:封装特定功能 代码块
函数的好处;减少重复代码 提高开发的效率
函数的写法:
关键字 返回值类型 函数名(参数类型1 参数名1,参数类型2 参数名2){
函数体(函数中的语句)
return 返回值;
}
没有返回值 使用 void
函数的书写位置:
1.必须在类中
2.不能在函数中 定义函数
编写函数步骤:
1.确定有没有参数 参数类型是什么
2.确定有没有返回值 返回值类型是什么
函数重载:
实现相同功能 但是内部实现不同
就可以使用函数的重载
是不是函数的重载 只跟参数有关
(只跟参数的类型 参数顺序 参数个数 有关)
跟函数的返回值类型 和 函数的实现 无关
return 后面可以不跟返回值
作用:直接结束这个函数
当要编写一个函数的时候,先看有没有系统或自己的函数可以去使用.
public class Demo{
public static void printRectangle(int x,int y){
System.out.println(x+y);
}
public static void main(String[] args){
printRectangle(1,2);
}
}
递归函数
函数的实现部分 调用一个跟自己相同名字的函数(自己调自己)
注意:递归函数都需要一个出口
public class Demo08{
public static int fun(int n){
if(n==1){
return 1;
}
return n*fun(n-1);
}
}