Java基础

Java基础

语句

语句的特点

因为语句是控制程序执行流程的

语句的分类

判断语句 if , if else , if else if  else

选择语句switch case default break

循环语句while,do while ,for

break,continue语句

关于语句到怎么学?

数据,变量,运算符,语句这三者计算机语言最基础要素的关系。

  1.  计算机是用来处理数据的。
  2.  怎么处理?先把数据用变量存储起来。在通过运算符对数据进行运算,比如算术运算符,比较运算符等。
  3. 对运算的结果进行处理,比如通过对运算结果的结果判断程序执行的流程。让运算过程多次执行等。

比如:

数学成绩:70,英语成绩:80,语文成绩:90

三门课程的总成绩:70+80+90 = 240。

如果总成绩大于等于220,恭喜你,毕业了。

如果总成绩小于220分。很遗憾,你要参加补考。

所以,现阶段的学习思路就是:  

  1. 数据在哪里?(把它存起来) ,
  2. 进行什么样的运算?
  3.  运算流程和结果要如何进行控制?
  4. 语句到底解决了什么问题?一定要知道。
  5. 至于语句的格式,不要死记硬背,而是通过练习的方式,多敲多思考(注意顺序,一定要是先多敲,再多思考,无论你是否听懂,都要先多敲,再多思考。因为先多思考,(通过看视频,问同学等等方法)好像思考明白了,你也一样写不出来,后者写出来了,你也浪费了一些敲的时间。如果没有思考明白,有可能连敲的意愿都没有了。所以只要多敲,你才知道你是否真的思考明白了,只有多敲,你才知道你哪里不明白,哪里是需要多思考的。因为敲的过程中,其实你就在被思考。所以结论,无论懂不懂,都要先敲,多敲。因为眼过千遍,不如手走一遭,一遭不行,再走三遭)。

程序流程控制语句

  • 判断结构  if
  • 选择结构  switch
  • 循环结构  while  for

判断结构

if语句特点:

  • 每一种格式都是单条语句。
  • 第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中。
  • 条件表达式无论写成什么样子,只看最终的结构是否是true 或者 false;

 

if语句书写时需要注意的:

当if语句控制的代码,只有一条语句时,if语句的大括号可以省略不写。

if(x>3){    

 x++;

可以简写成

if(x>3)    

  x++;

判断结构  阅读练习

sout为输出缩写:判断对错,输出为?

判断奇偶数?

package text;

import java.util.Scanner;

//判断奇偶性
//键盘录入,%2 的结果如果等于0为偶,否则为奇
public class Text03_Syntax {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a=sc.nextInt();
        if (a % 2 == 0) {
            System.out.println("偶数");
        } else {
            System.out.println("奇数");
        }


    }

}

 

选择结构语句(Switch)

选择结构 代码阅读练习

代码是否可以编译通过?如果能,运行结果是什么?如果不能,原因是什么?

package demo.demo2;

public class Tect0524 {
    public static void main(String[] args) {
        int x = 4;

        switch(x){
            case 3:
                System.out.println("a");
                case 4:
                    System.out.println("b");
                default:
                    System.out.println("c");
        }
    }
}

switch语句特点:

  • switch语句选择的类型是 int 类型。
  • case之间与default没有顺序。先执行第一个case,没有匹配的case执 行default。
  • 结束switch语句的两种情况:遇到break,执行到switch语句结束。
  • 如果匹配的case或者default没有对应的break,那么程序会继续向下 执行,运行可以执行的语句,直到遇到break或者switch结尾结束。

switch练习

  1. 季节案例写一遍同时使用优化后的方案  info 一条输出语句。
  2. 根据给定月份,打印对应天数。除了2月。其他完成。
package text;
//用switch判断 季节
import java.util.Scanner;

public class Text05_switch {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int month = sc.nextInt();
        String info ;
        switch (month) {
            case 3:
            case 4:
            case 5:
                info = month + "是春季";
                break;
            case 6:
            case 7:
            case 8:
                info = month + "是夏季";
                break;
            case 9:
            case 10:
            case 11:
                info = month + "是秋季";
                break;
            case 12:
            case 1:
            case 2:
                info = month + "是冬季";
                break;
            default:
                info = month+"月是没有对应的季节";
        }
        System.out.println(info);

    }
}
package demo;

import java.util.Scanner;

public class Demo10_Switch {
    public static void main(String[] args) {

        /*
        练习:通过给定月份,得出该月有多少天。1月31天。3月31天 。4月30天。
        思路:
        1,我是要对多个数值做判断,用if呢?还是switch呢?switch.
        2. 多个值对应同一个结果。使用switch的穿透。
         */
        //定义一个月份的变量记录月份的值。
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入月份");
        int month = sc.nextInt();
        String info;
        switch(month){
            case 1: case 3: case 5:
            case 7: case 8: case 10:
            case 12:
                info = month+"月有31天";
                break;
            case 4: case 6: case 9: case 11:
                info = month+"月有30天";
                break;
            case 2:
                //因为有闰年,2月是29天。非闰年是28天。所以要做个判断。
                System.out.println("请输入年份:");
                int year = sc.nextInt();
                if(year %4==0 && year%100!=0||year%400==0){
                    info = month+"月有29天";
                }else{
                    info = month+"月有28天";
                }
                break;
            default:
                info = month+"月份不存在";

        }
        System.out.println(info);
    }

}

循环语句

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

执行语句;

} 注:

  • for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复这个过程,直到条件不满足为止。
  • while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变量在循环结束后还可以继续使用。
  • 最简单无限循环格式:while(true) , for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。

break(跳出), continue(继续)

break语句:应用范围:选择结构和循环结构。

 continue语句:应用于循环结构。

注:

  • 这两个语句离开应用范围,存在是没有意义的。
  • 这个两个语句单独存在下面都不可以有语句,因为执行不到。
  • continue语句是结束本次循环继续下次循环。
  • 标号的出现,可以让这两个语句作用于指定的范围(实际开发很少用到)。

 循环结构 代码阅读练习

代码是否可以编译通过?如果能,运行结果是什么?如果不能,原因是什么?

要问集

序号

需要掌握的核心问题

答案

1.

什么时候会用到if elseif else 结构?

 

2.

ifswitch语句的区别?

 

3. 

switch语句什么时候用?

 

4. 

switch语句穿透什么时候会用到?

 

5. 

switch语句的执行特点是?

 

6. 

switch语句的case的可以取什么类型的值?

 

7.

循环语句什么时候用?

 

8.

当语句中出现多条输出语句,如何提高复用性?

 

9.

你是如何理解累加和计数器的?

 

10.

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值