天天看点

day04<Java语言基础+>

Java语言基础(循环结构概述和for语句的格式及其使用)

Java语言基础(循环结构for语句的练习之获取数据)

Java语言基础(循环结构for语句的练习之求和思想)

Java语言基础(循环结构for语句的练习之水仙花)

Java语言基础(循环结构for语句的练习之统计思想)

Java语言基础(循环结构while语句的格式和基本使用)

Java语言基础(循环结构while语句的练习)

Java语言基础(循环结构do...while语句的格式和基本使用)

Java语言基础(循环结构三种循环语句的区别)

Java语言基础(循环结构注意事项之死循环)

Java语言基础(循环结构循环嵌套输出4行5列的星星)

Java语言基础(循环结构循环嵌套输出正三角形)

Java语言基础(循环结构九九乘法表)

Java语言基础(控制跳转语句break语句)

Java语言基础(控制跳转语句continue语句)

Java语言基础(控制跳转语句标号)

Java语言基础(控制调整语句练习)

Java语言基础(控制跳转语句return语句)

Java语言基础(方法概述和格式说明)

Java语言基础(方法之求和案例及其调用)

Java语言基础(方法的注意事项)

Java语言基础(方法的练习)

Java语言基础(方法之输出星形及其调用)

Java语言基础(方法的练习)

Java语言基础(方法重载概述和基本使用)

Java语言基础(方法重载练习比较数据是否相等)

###04.01_Java语言基础(循环结构概述和for语句的格式及其使用)

 A:循环结构的分类

     for,while,do...while 

 B:循环结构for语句的格式:

        for(初始化表达式;条件表达式;循环后的操作表达式) {

            循环体;

        }

 C执行流程:

     a:执行初始化语句

     b:执行判断条件语句,看其返回值是true还是false

         如果是true,就继续执行

         如果是false,就结束循环

     c:执行循环体语句;

     d:执行循环后的操作表达式

     e:回到B继续。

 D:案例演示

     在控制台输出10次"helloworld"

for (int i = 1;i <= 10 ;i++ ) {

           System.out.println("helloworld");

       }

###04.02_Java语言基础(循环结构for语句的练习之获取数据)

 A:案例演示

     需求:请在控制台输出数据1-10

     需求:请在控制台输出数据10-1

for (int i = 1;i <= 10 ;i++ ){

       }

       System.out.println("-----------------------");

       for (int i = 10;i >= 1 ;i-- ) {

          System.out.println("i = " + i);

       }

 B:注意事项

     a:判断条件语句无论简单还是复杂结果是boolean类型。

     b:循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。

     c:一般来说:有左大括号就没有分号,有分号就没有左大括号

###04.03_Java语言基础(循环结构for语句的练习之求和思想)

 A:案例演示

     需求:求出1-10之间数据之和

int sum = 0;

       for (int i = 1;i <= 10 ;i++ ) {

          sum = sum + i;

       }

 B:练习

     需求:求出1-100之间偶数和2550

int sum = 0;

       for (int i = 1;i <= 100 ;i++ ) {

          if (i % 2 == 0) {

             sum = sum + i;

          }

       }

     需求:求出1-100之间奇数和2500

 int sum = 0;

for (int i = 1;i <= 100 ;i+=2 ) {

}

###04.04_Java语言基础(循环结构for语句的练习之水仙花)

 A:案例演示

     需求:在控制台输出所有的”水仙花数”Flower

     所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。

     举例:153就是一个水仙花数。

     153 = 111 + 555 + 333 = 1 + 125 + 27 = 153

分析:

1,100 - 999

2,获取每一个位数的值,百位,十位,个位

3,判断各个位上的立方和是否等于这个数,如果等于打印

 for (int i = 100;i <= 999 ;i++ ) { //获取100到999之间的数

//123 % 10

            int shi = i / 10 % 10; //12 % 10;

//1 % 10

//153,370,371,407

}

###04.05_Java语言基础(循环结构for语句的练习之统计思想)

 A:案例演示

     需求:统计”水仙花数”共有多少个

分析:

1,需要有一个变量记录住水仙花数的个数

2,获取到所有的3位数

3,判断是否满足水仙花数

4,如果满足条件,计数器就自增

int count = 0;

for(int i = 100; i<1000; i++) {

​ ge = i % 10;

​ shi = i / 10 % 10;

​ bai = i / 10 / 10;

​(ge * ge * ge + shi * shi * shi + bai * bai * bai == i){

out.println(i);

out.println(count);

###04.06_Java语言基础(循环结构while语句的格式和基本使用)

 A:循环结构while语句的格式:

        while循环的基本格式:

        while(判断条件语句) {

            循环体语句;

        }

        完整格式:

        初始化语句;

        while(判断条件语句) {

             循环体语句;

             控制条件语句;

        }

 B:执行流程:

     a:执行初始化语句

     b:执行判断条件语句,看其返回值是true还是false

         如果是true,就继续执行

         如果是false,就结束循环

     c:执行循环体语句;

     d:执行控制条件语句

     e:回到B继续。

 C:案例演示

     需求:请在控制台输出数据1-10

 int x = 1;

while (x <= 10) {

out.println("x = " +  x);

}

###04.07_Java语言基础(循环结构while语句的练习)

 A:求和思想

     求1-100之和

 int i = 1;

int sum = 0;

while (i <= 100) {

 System.out.println(sum);

 B:统计思想

     统计”水仙花数”共有多少个

 int i = 100;

int count = 0;

while (i <= 999) {

​ ge = i % 10;

​ shi = i / 10 % 10;

​ bai = i / 10 /10;

​(i == ge * ge * ge + shi * shi * shi + bai * bai * bai) {

count++;

out.println(count);

###04.08_Java语言基础(循环结构do...while语句的格式和基本使用)

 A:循环结构do...while语句的格式:

        do {

            循环体语句;

        }while(判断条件语句);

        完整格式;

        初始化语句;

        do {

            循环体语句;

            控制条件语句;

        }while(判断条件语句);

 B:执行流程:

     a:执行初始化语句

     b:执行循环体语句;

     c:执行控制条件语句

     d:执行判断条件语句,看其返回值是true还是false

         如果是true,就继续执行

         如果是false,就结束循环

     e:回到b继续。

 C:案例演示

     需求:请在控制台输出数据1-10

 int i = 1;

do {

out.println("i= " + i);

​ (i <= 10);

###04.09_Java语言基础(循环结构三种循环语句的区别)

 A:案例演示

     三种循环语句的区别:

     do...while循环至少执行一次循环体。

     而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。

 B:案例演示

     for循环和while循环的区别:

         A:如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用谁就用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。

###04.10_Java语言基础(循环结构注意事项之死循环)

 A:一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。

 B:两种最简单的死循环格式

     while(true){...}

     for(;;){...}

###04.11_Java语言基础(循环结构循环嵌套输出4行5列的星星)

 A:案例演示

     需求:请输出一个4行5列的星星()图案。

            注意:

                System.out.println("");和System.out.print("");的区别

 B:结论:

     外循环控制行数,内循环控制列数

 for (int i = 1;i <= 4 ;i++ ) { //外循环决定的是行数

​ (int j = 1;j <= 5 ;j++ ) { //内循环决定的是列数

out.print("*");

out.println();

###04.12_Java语言基础(循环结构循环嵌套输出正三角形)

 A:案例演示

         需求:请输出下列的形状

        for (int i = 1;i <= 5 ;i++ ) { //外循环决定的是行数

​ (int j = 1;j <= i ;j++ ) { //内循环决定的是列数

out.print("*");

out.println();

###04.13_Java语言基础(循环结构九九乘法表)

 A:案例演示

     需求:在控制台输出九九乘法表。

 B:代码优化

        注意:

        '\x' x表示任意,\是转义符号,这种做法叫转移字符。

        '\t'    tab键的位置

        '\r'    回车

        '\n'    换行

        '\"'

        '\''

for (int i = 1; i <= 9; i++) { // 行数

​ (int j = 1; j <= i; j++) { // 列数

out.print(j + "*" + i + "=" + (i * j) + "\t");

out.println();

###04.14_Java语言基础(控制跳转语句break语句)

 A:break的使用场景

     只能在switch和循环中

for (int i = 1; i <= 9; i++) {

​ (i == 4) {

​;

out.println("i = " + i);

}

###04.15_Java语言基础(控制跳转语句continue语句)

 A:continue的使用场景

     只能在循环中

 for (int x = 1; x <= 10; x++) {

​ (x == 4) {

continue; // 终止本次循环,继续下次循环

out.println("x = " + x);

###04.16_Java语言基础(控制跳转语句标号)

 标号:标记某个循环对其控制

 标号组成规则:其实就是合法的标识符

outer: for (int i = 1;i <= 10 ;i++ ) { //a就是标号,只要是合法的标识符即可

out.println("i = " + i);

    inner: for (int j = 1;j <= 10 ;j++ ) {

out.println("j = " + j);

​ outer;

}

System.out.println("大家好");

​​http://www.heima.com​​

System.out.println("才是真的好");

###04.17_Java语言基础(控制调整语句练习)

 A:练习题

        for(int x=1; x<=10; x++) {

            if(x%3==0) {

                //在此处填写代码

            }

            System.out.println(“Java基础班”);

        }

        我想在控制台输出2次:“Java基础班“

        我想在控制台输出7次:“Java基础班“

        我想在控制台输出13次:“Java基础班“    

for(int x=1; x<=10; x++) {

​(x%3==0) {

//我想在控制台输出2次:“Java基础班“

//我想在控制台输出7次:“Java基础班“

System.out.println("Java基础班");//我想在控制台输出13次:“Java基础班“

out.println("Java基础班");

###04.18_Java语言基础(控制跳转语句return语句)

 A:return的作用

     返回

     其实它的作用不是结束循环的,而是结束方法的。

 B:案例演示

     return和break以及continue的区别?

     return是结束(返回)方法

     break是跳出循环

     continue是终止本次循环继续下次循环

###04.19_Java语言基础(方法概述和格式说明)

 A:为什么要有方法

     提高代码的复用性 

 B:什么是方法

     完成特定功能的代码块。 

 C:方法的格式

        修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {

            方法体语句;

            return 返回值; 

        } 

 D:方法的格式说明

     修饰符:目前就用 public static。

     返回值类型:就是功能结果的数据类型。

     方法名:符合命名规则即可。方便我们的调用。

     参数:

         实际参数:就是实际参与运算的。

         形式参数;就是方法定义上的,用于接收实际参数的。

     参数类型:就是参数的数据类型

     参数名:就是变量名

     方法体语句:就是完成功能的代码。

     return:结束方法的。

     返回值:就是功能的结果,由return带给调用者。 

###04.20_Java语言基础(方法之求和案例及其调用)

 A:如何写一个方法

     1,明确返回值类型

     2,明确参数列表 

 B:案例演示

     需求:求两个数据之和的案例

 C:方法调用图解

day04&lt;Java语言基础+&gt;

###04.21_Java语言基础(方法的注意事项)

 A:方法调用(有具体返回值)

     a:单独调用,一般来说没有意义,所以不推荐。

     b:输出调用,但是不够好。因为我们可能需要针对结果进行进一步的操作。

     c:赋值调用,推荐方案。

 B:案例演示

     a:方法不调用不执行

     b:方法与方法是平级关系,不能嵌套定义

     c:方法定义的时候参数之间用逗号隔开

     d:方法调用的时候不用在传递数据类型

     e:如果方法有明确的返回值,一定要有return带回一个值

###04.22_Java语言基础(方法的练习)

 A:案例演示

     需求:键盘录入两个数据,返回两个数中的较大值

 B:案例演示

     需求:键盘录入两个数据,比较两个数是否相等     

 pasting

new Scanner(System.in); // 创建键盘录入对象
        System.out.println("请输入第一个整数:");
        int x = sc.nextInt(); // 将键盘录入的整数存储在x中
        System.out.println("请输入第二个整数:");
        int y = sc.nextInt(); // 将键盘录入的整数存储在y中

        // int max = getMax(x,y);
        // System.out.println(max);

        boolean b = isEquals(x, y);
        System.out.println(b);
    }

    /*
     * 返回连个整数的较大值 1,明确返回值类型 int 2,明确参数列表 int a,int b
     */
    public static int getMax(int a, int b) {
        return a > b ? a : b;
    }

    /*
     * 判断两个整数是否相等 1,明确返回值类型 boolean 2,明确参数列表 int a,int b
     */
    public static boolean isEquals(int a, int b) { // isEquals 是否相等
        return      

###04.23_Java语言基础(方法之输出星形及其调用)

 A:案例演示

     需求:根据键盘录入的行数和列数,在控制台输出星形

 B:方法调用:(无返回值,void)

     单独调用

     输出调用(错误)

     赋值调用(错误)

1     public static void main(String[] args) {
 2         Scanner sc = new Scanner(System.in); // 创建键盘录入对象
 3         System.out.println("请输入行数:");
 4         int row = sc.nextInt(); // 将键盘录入的行数存储在row中
 5         System.out.println("请输入列数:");
 6         int column = sc.nextInt(); // 将键盘录入的列数存储在column中
 7 
 8         // System.out.println(print(row,column)); //错误: 此处不允许使用 '空'
 9         // 类型,返回值是void的方法不能输出调用
10         // 返回值是void的方法只能单独调用
11         print(row, column);
12     }
13 
14     /*
15      * 在控制台输出矩形星形 1,明确返回值类型,经分析没有具体的返回值类型,void 2,明确参数列表int a,int b
16      */
17 
18     public static void print(int a, int b) {
19         for (int i = 1; i <= a; i++) { // 行数
20             for (int j = 1; j <= b; j++) { // 列数
21                 System.out.print("*");
22             }
23             System.out.println();
24         }
25         // return ; //如果返回值类型是void,return可以省略,即使省略系统也会默认给加上,形式是return;
26      

###04.24_Java语言基础(方法的练习)

 A:案例演示

     需求:根据键盘录入的数据输出对应的乘法表

public static void main(String[] args) {
        Scanner sc = new Scanner(System.in); // 创建键盘录入对象
        System.out.println("请录入一个整数,范围在1-9之间");
        int num = sc.nextInt(); // 将键盘录入的整数存储在num中
        print99(num);
    }

    /*
     * 打印99乘法表 1,返回值类型void 2,参数列表,int a
     */

    public static void print99(int a) {
        for (int i = 1; i <= a; i++) { // 行数
            for (int j = 1; j <= i; j++) { // 列数      

###04.25_Java语言基础(方法重载概述和基本使用)

 A:方法重载概述

     求和案例

         2个整数

         3个整数

         4个整数

 B:方法重载:

     在同一个类中,方法名相同,参数列表不同。与返回值类型无关。

     参数列表不同:

         A:参数个数不同

         B:参数类型不同

         C:参数的顺序不同(算重载,但是在开发中不用)

1     public static void main(String[] args) {
 2         double sum1 = add(10, 20.1);
 3         System.out.println(sum1);
 4 
 5         int sum2 = add(10, 20, 30);
 6         System.out.println(sum2);
 7 
 8         double sum3 = add(12.3, 13);
 9         System.out.println(sum3);
10     }
11     /*
12      * 求两个整数的和 
13      * 1,返回值类型int 
14      * 2,参数列表 int a,double b
15      */
16     public static double add(int a, double b) {
17         return a + b;
18     }
19     /*
20      * 求三个整数的和 
21      * 1,返回值类型int 
22      * 2,参数列表 int a,int b,int c
23      */
24     public static int add(int a, int b, int c) {
25         return a + b + c;
26     }
27     /*
28      * 求两个小数的和 
29      * 1,返回值类型double 
30      * 2,参数列表 double a,int b
31      */
32     public static double add(double a, int b) {
33         return a + b;
34      

###04.26_Java语言基础(方法重载练习比较数据是否相等)

 A:案例演示

     需求:比较两个数据是否相等。

     参数类型分别为两个int类型,两个double类型,并在main方法中进行测试

###04.27_day04总结

把今天的知识点总结一遍。

###04.28_day04 作业

1:for循环的格式?要能看懂执行流程。

  用for循环完成如下案例

  求和

  求偶数和

  求奇数和

  打印水仙花数

  统计水仙花数

  九九乘法表

2:while循环的格式?要能看懂执行流程

  用while循环完成如下案例

  求和

  纸张折叠成珠穆朗玛峰高度的次数

3:break,continue和return分别有什么用?

4:函数的概念?函数的格式?格式的解释说明

5:函数的调用

A:明确返回值类型的函数调用

B:void类型的函数调用

6:函数的练习:

A:求两个数据之和

B:判断两个数据是否相等

C:获取两个数中较大的值

D:打印m行n列的星形矩形