java (3)转职之路之循环:函数:随机数Math:
1. do while 循环
特点: 不管判断语句是否成立,都会先执行循环体一次;如果判断条件成立,接着执行
格式: do{ 循环体
}while(判断语句)
实例: 从星期1开始打印,并询问明天上班不,输入上班,继续打印;输入不上班,停止程序;
2. for 循环
- 结构: for(循环增量初值 ; 判断条件 ; 增量){ 循环体 };
2. 实例: 使用for循环找到1-100中是7的倍数的个数并且打印个数; ( 用到计数思想)
public class Demo02 {
public static void main(String[] args) {
int sum = 0; //不能定义到for循环里面;外面会访问不到;
for(int i = 0;i<100;i++) {
if(i%7==0) {
sum++;
}
}
System.out.println(sum);
}
3.for循环的嵌套循环
格式: 1个 for 循环里面再放一个for循环;
实例:打印三角形;以及9*9乘法表;
嵌套循环的特点: 外层循环控制:一共多少行;内层循环控制一共有多少列;
修改内循环的初始值部分;是三角形图形的尖头向下;
修改内循环的判断条件; 使的三角形的尖头向上;
4.关于while和for循环的使用类型;
1. 明确了循环的停止条件时:一般使用while比较多;
便利数组的时候:使用for循环;
2. for循环死循环
for(;;) {
System . out . println ("我是死循环");
}
3. while 死循环;
while(true){
System . out . println ("我是死循环");
}
格式: double random = Math.random(); 这时系统会返回一个随机数,随机数的范围是[0,1);
应用:选取任意范围内整数;
公式(最大值-最小值+1)+最小值 [最大值,最小值]
实例: 猜数字游戏:[0,100]之间任意猜一个数字;int number = (int)(Math.random()*(100-0+1)+0); //系统随机产生一个随机数
Scanner scanner = new Scanner(System.in);//调用一个对象
while(ture){
System.out.println(请输入0-100的数字);
Str str = scanner.nextLine(); //调用对象的方法;用户输入的字符串;
int sum = Integer.parseInt(str);
if (sum>){
System.out.println("猜大了");
}else if (sum==number)(
System.out.println("猜对了")
break;
}else{
System.out.println("小了")
}
6.函数
1. 定义: 封装特定功能的代码块;
好处:有效的减少重复代码;提高开发率;
写法: 1.关键字(public static )一个或者多个关键字;
2.返回值类型:可以是 int, double, String, char 等;
3.函数名(参数类型1 参数名1,参数类型2 参数名2,....) {函数体}
5.编写函数的步奏 :1 确定有没有参数; 2.确定有没有返回值
4.如果没有返回值 在关键字后面加上void ;例如:main函数; 2.如果有返回值:void替换成相应返回值的类型;
实例1: 带有返回值得函数;
public static int sum(int x,int y,int z) {//int是返回值;可以换String;return出来的是""字符串;
return x+y+z;
}
实例2: 计算两个数和三个数的最大值;
public static int max(int x, int y) {
int max1 = x > y ? x : y;
return max1;
}
public static int max(int x, int y, int z) {
int max1 = max(x, y);
int max2 = max1 > z ? max1 : z;
return max2;
}
1. 函数重载:
1.实现相同的功能,但是内部实现不同;
2.是不是函数的重载,只和参数有关;(只和参数的类型,参数的顺序,参数的个数有关)
3. 和函数的返回值类型和函数的实现无关;