第三章控制语句

3.0 控制语句

顺序,选择,循环

3.1 选择结构

1、if单选择结构

2、if-else双选择结构

3、if-else if-else多选择结构

4、switch结构

Math.random()该方法用于产生一个0到1区间的double类型的随机数,但是不包括1。

int i = (int) (6 * Math.random()); //产生:[0,5]之间的随机整数

3.2 循环结构

1、while循环

2、do-while循环

3、for循环

//while循环
int i = 0;
int sum = 0;//1+2+3+…+100=?
while (i <= 100) {    
    sum += i;//相当于sum = sum+i;    
    i++;
}
System.out.println("Sum= " + sum);
//do-while循环
int i = 0;
int sum = 0;
do {
    sum += i; // sum = sum + i
    i++;
} while (i <= 100);//此处的;不能省略
System.out.println("Sum= " + sum);
//for循环
for (int i = 1; i < 10; i++) { // i是一个乘数
    for (int j = 1; j <= i; j++) { // j是另一个乘数
        System.out.print(j + "*" + i + "=" + (i * j < 10 ? (" " + i * j) : i * j) + "  ");
    }
    System.out.println();
}

4、嵌套循环

5、break语句和continue语句

6、带标签的break和continue

“标签”是指后面跟一个冒号的标识符,例如:“label:”。

Java在循环语句之前用到标签。

在循环之前设置标签的唯一理由是:

我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方。

outer: for (int i = 101; i < 150; i++) {
    for (int j = 2; j < i / 2; j++) {
        if (i % j == 0){
            continue outer;
        }
    }
    System.out.print(i + "  ");
}

3.3 语句块

语句块(有时叫做复合语句),是用花括号扩起的任意数量的简单Java语句。

3.4 方法

方法就是一段用来完成特定功能的代码片段,类似于其它语言的函数。

面向过程中,函数是最基本单位,整个程序由一个个函数调用组成。

面向对象中,整个程序的基本单位是类,方法是从属于类和对象的。

方法声明格式:(add方法)

[修饰符1  修饰符2  …]   返回值类型    方法名(形式参数列表){
    Java语句;… … …
}
public static void main(String[] args){
    int num1 = 10;
    int num2 = 20;
    int sum = add(num1, num2);
    System.out.println("sum = " + sum);
    //print();
}
public static int add(int n1, int n2) {
    int sum = n1 + n2;
    return sum;
}

3.5 方法的重载(overload)

方法的重载是指一个类中可以定义多个方法名相同,但参数不同的方法。

调用时,会根据不同的参数自动匹配对应的方法。

重载的方法,实际是完全不同的方法,只是名称相同而已!

构成方法重载的条件:

1、不同的含义:参数个数、参数类型、参数顺序不同

2、只有返回值不同,不构成方法的重载

3、只有形参的名称不同,不构成方法的重载

public static void main(String[] args){    
    System.out.println(add(3, 5));// 8
    System.out.println(add(3, 5, 10));// 18
    System.out.println(add(3.0, 5));// 8.0
    System.out.println(add(3, 5.0));// 8.0
    // 我们已经见过的方法的重载
    System.out.println();// 0个参数
    System.out.println(1);// 参数是1个int
    System.out.println(3.0);// 参数是1个double
}        
//add方法
public static int add(int n1, int n2) {
    int sum = n1 + n2;
    return sum;
}        
//编译错误:只有返回值不同,不构成方法的重载
public double add(int n1, int n2) {
    double sum = n1 + n2;
    return sum;
}
//编译错误:只有参数名称不同,不构成方法的重载
public int add(int n2, int n1) {
    double sum = n1 + n2;
    return sum;
}
// 方法名相同,参数个数不同,构成重载
public int add(int n1, int n2, int n3) {
    int sum = n1 + n2 + n3;
    return sum;
}
// 方法名相同,参数类型不同,构成重载
public double add(double n1, int n2) {
    double sum = n1 + n2;
    return sum;
}
// 方法名相同,参数顺序不同,构成重载
public double add(int n1, double n2) {
    double sum = n1 + n2;
    return sum;
}        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值