Java_从入门到JavaEE_04

embedded/2024/10/21 13:38:07/

一、基本转义字符

含义:具有特殊意义的字符本身

字符含义
\"表示一个双引号字符
\’表示一个单引号字符
\\表示一个斜杠字符
\n表示换行
\t表示水平制表

print():输出
​ println():输出+换行

java">		System.out.println("\"1122\"");System.out.println("\'2233\'");System.out.println("\\3344\\");System.out.print("1122\n");System.out.print("2233\n");System.out.println("3*3=9\t3*4=12\t3*5=15");System.out.println("4*3=12\t4*4=16\t4*5=20");

在这里插入图片描述

二、常量

  1. 含义:程序执行过程中不可发生改变的量

  2. 分类:

    1. 数字字面量:程序中出现的数字

    ​ 整数数字默认int类型
    ​ 小数数字默认double类型

    1. 字面值常量:使用双引号括起来的内容
      System.out.println(“123”);
    2. final:使用final修饰的变量
      final int MAX_LENGTH = 100;
      System.out.println(MAX_LENGTH);
  3. 命名拓展:

    1. 大驼峰命名法/帕斯卡命名法:

      法则:单词首字母大写

      作用:类

      **ps:**public class HelloWorld{}

    2. 小驼峰命名法:

      法则:除了第一个单词,其余的单词首字母大写

      作用:方法、变量

      **ps:**int curCapacity = 0;

    3. 常量命名法:

      法则:所有字母大写,单词之间使用下划线隔开

      作用:常量

      **ps:**final int MAX_LENGTH = 100;

三、Java的执行语句

1.分类

  1. 顺序语句:方法里的代码从上往下执行

  2. 分支语句:条件成立就执行某个功能

    2.1 if分支

    2.2 switch分支

  3. 循环语句:条件成立就重复性的执行某个功能

    3.1 for循环

    3.2 while循环

    3.3 do-while循环

  4. 特殊的流程控制语句

    4.1 break

    4.2 continue

    4.3 return

    4.4 label

2.分支语句

  1. 简单if分支

    1. 语法结构:

      ​ if(表达式){

      ​ …代码块…

      ​ }

    2. 理解:表达式的结果必须是boolean类型

      true - 执行代码块

      false- 跳过if分支,执行if以外的代码

    3. 举例:

      java">	if(结果为boolean){System.out.println("...代码块...");}System.out.println("if以外的代码");
      

      小结:if(){}要么进入,要么不进入

  2. 复杂的if分支

    输入体重与身高,计算健康值

    人类的健康值在20-25的数值内为健康

    java">import java.util.Scanner;
    public class Test{public static void main(String[] args){Scanner scan = new Scanner(System.in);System.out.println("请输入体重(Kg):");double weight = scan.nextDouble();System.out.println("请输入身高(M):");double height = scan.nextDouble();double health = weight/(height*height);if(health>20 && health<25){System.out.println("护士说:\"健康,保持现有状态\"");}}
    }
    

    在这里插入图片描述

  3. if…else…分支

  4. 语法结构:

    if(表达式){

    ​ …代码块…

    }else{

    ​ …else代码块…

    }

  5. 理解:

    表达式的结果必须是boolean类型

    true - 执行代码块

    false- 执行else代码块

  6. 举例:

    java">    if(false){System.out.println("...代码块...");}else{System.out.println("...else代码块...");}System.out.println("if分支以外的代码块");
    

    小结:if…else…二选一的情况下使用

    输入成绩,显示是否及格

    java">import java.util.Scanner;
    public class Test{public static void main(String[] args){Scanner scan = new Scanner(System.in);System.out.println("请输入分数:");double score = scan.nextDouble();if(score > 60){System.out.println("及格");}else{System.out.println("挂科");}}
    }
    

    在这里插入图片描述
    在这里插入图片描述

    小结:if可以判断区间,也可以判断复杂条件,只要是表达式的结果是boolean就行。

  7. 多重if分支

    1. 语法结构:

      if(表达式1){

      ​ …代码块1…

      }else if(表达式2){

      ​ …代码块2…

      }else if(表达式n){

      ​ …代码块n…

      }else{

      ​ …else代码块…

      }

    2. 理解:

      从上往下判断表达式,哪个表达式先为true,就执行对应的代码块,如果都不为true就执行else代码块

      表达式的结果必须是boolean类型

      true - 执行代码块

      false- 执行else代码块

      注意:else代码块根据需求可写可不写

    3. 实验:

java">	if(false){System.out.println("...代码块1...");		}else if(false){System.out.println("...代码块2...");}else if(false){System.out.println("...代码块3...");}else{System.out.println("...else代码块...");}System.out.println("if分支以外的代码");

​ 4. 案例:通过键盘录入学生成绩,输出等级

java">import java.util.Scanner;
public class Test{public static void main(String[] args){Scanner scan = new Scanner(System.in);System.out.println("请输入成绩:");double score = scan.nextDouble();if(score>90 && score<=100){System.out.println("A");}else if(score>80 && score<=90){System.out.println("B");}else if(score>70 && score<=80){System.out.println("C");}else if(score>60 && score<=70){System.out.println("D");}else if(score> 0 && score<=60){System.out.println("E");}else{System.out.println("成绩异常");}}
}

​ 小结:多重if分支在多选一的情况下使用

  1. if分支嵌套

    案例:运动会,百米赛跑跑入16秒内的学生有资格进决赛, 根据性别分别进入男子组和女子组。

java">import java.util.Scanner;
public class Test{public static void main(String[] args){Scanner scan = new Scanner(System.in);System.out.println("请输入成绩:");double score = scan.nextDouble();if(score>=0 && score<16){System.out.println("请输入性别:");String sex = scan.next();if(sex.equals("男")){//判断两个字符串的内容是否相同(sex和"男")System.out.println("恭喜进入到男子组决赛");}else if(sex.equals("女")){//判断两个字符串的内容是否相同(sex和"女")System.out.println("恭喜进入到女子组决赛");}else{System.out.println("性别异常");}}else if(score>=16){System.out.println("你被淘汰了,重在参与");}else{System.out.println("成绩异常");}}
}

​ 小结:if可以无限层嵌套
​ 注意:嵌套最好不要超过3层,嵌套越多可读性越差

  1. switch分支的使用

    1. 语法结构:

      switch(表达式){

      ​ case 值1:

      ​ …代码块1…

      ​ break;

      ​ case 值2:

      ​ …代码块2…

      ​ break;

      ​ case 值n:

      ​ …代码块n…

      ​ break;

      ​ default:

      ​ …default代码块…

      ​ break;

      }

    2. 理解:

      表达式的结果分别给值1、值2、值n比较,哪个相同就执行对应的代码块

      如果都不相同就执行default代码块

      default代码块根据需求可写可不写

      break表示跳出当前分支语句

    3. 实验:

java">switch(50){case 10:System.out.println("10");break;case 50:System.out.println("50");break;case 100:System.out.println("100");break;default:System.out.println("...default代码块...");break;}System.out.println("switch分支以外的代码");

​ 小结:switch是比较表达式的结果和case后面的值是否相同

  1. switch分支的深入

    1. case的值不允许相同。

    2. default可以省略(相当于多重if里的else{})

    3. break可以省略,但在switch底层逻辑中表达式的值与case进行比较,当值相同后,进入语句中不会在进行比较,因此会继续向下执行,直到再次遇到 break后才会跳出switch。

    4. default的位置不一定,但是为了可读性最好放在最后。

    5. 表达式值的类型byte、short、int、char、String(JDK1.8)、枚举(JDK1.5)。

      原因:switch底层只识别int值

      1. byte --> int 自动转型
      2. short -> int 自动转型
      3. int --> int 直接使用
      4. char --> int 获取字符的码值
      5. String-> int 获取字符串的hash码(获取字符串中多个字符的码值 + 散列算法,算出来的结果就是hash值)
      6. 枚举 --> int 获取枚举对象的编号
  2. 举例:输入年和月,输出当月的天数

    java">import java.util.Scanner;
    public class Test{public static void main(String[] args){Scanner scan = new Scanner(System.in);System.out.println("请输入年:");int year = scan.nextInt();System.out.println("请输入月:");int month = scan.nextInt();int day = 0;switch(month){case 1:case 3:case 5:case 7:case 8:case 10:case 12:day = 31;break;case 4:case 6:case 9:case 11:day = 30;break;case 2:if(year%4==0 && year%100!=0 || year%400==0){day = 29;}else{day = 28;}break;}System.out.println(year + "年" + month + "月的天数为:" + day + "天");}
    }
    
  3. if 与 switch的区别

    1. 表达式的区别:

      if:boolean类型

      switch:byte、short、int、char、String(JDK1.8)、枚举(JDK1.5)

    2. 应用场景的区别:

      if:判断区间、判断复杂条件

      switch:判断单个值是否相同


http://www.ppmy.cn/embedded/26933.html

相关文章

Linux基础part-8

1、计算机硬盘类型和对应接口 1. Linux硬盘接口 硬盘接口类型直接影响到存储设备的性能、兼容性和可靠性。Linux硬盘接口是用来连接硬盘驱动器&#xff08;包括传统机械硬盘和固态硬盘&#xff09;到计算机系统的接口&#xff0c;它们允许数据在硬盘和计算机之间进行传输和交换…

邦芒面试:面试时,如何展现卓越的口才

面试时&#xff0c;如何展现卓越的口才&#xff0c;让你在求职面试中脱颖而出&#xff1f;以下为你提供九大策略&#xff0c;助你“舌战群儒”&#xff0c;赢得心仪的职位。 深思熟虑后发言 避免立即回答问题&#xff0c;先稍作思考&#xff0c;确保回答逻辑清晰&#xff0c;言…

数据库语法复习

总结&#xff1a; DDL&#xff08;数据定义语言&#xff09; CREATE DATABASE&#xff1a;创建一个新的数据库。DROP DATABASE&#xff1a;删除一个数据库。CREATE TABLE&#xff1a;创建一个新的表。DROP TABLE&#xff1a;删除一个表。ALTER TABLE&#xff1a;修改表的结构&a…

Redis是一款高性能的键值存储数据库,但除了存储数据,它还可以扮演消息队列的角色

Redis是一款高性能的键值存储数据库&#xff0c;但除了存储数据&#xff0c;它还可以扮演消息队列的角色。在Spring MVC中&#xff0c;我们可以利用Redis的特性来实现异步处理和任务调度。本文将介绍如何使用Redis作为消息队列&#xff0c;在Spring MVC中实现异步处理和任务调度…

深入理解 JavaScript 继承机制

目录 引言 一、原型链继承 二、借用构造函数继承 三、组合继承 四、ES6 类继承 引言 在 JavaScript 中&#xff0c;继承是一种强大的特性&#xff0c;它允许我们基于已有的对象&#xff08;称为父类或基类&#xff09;创建新的对象&#xff08;称为子类或派生类&#xff09…

AI视频教程下载:用 ChatGPT 和 WordPress 创建赚钱网站

您是否有兴趣开设网站&#xff08;博客&#xff09;&#xff0c;但不知道从何入手&#xff1f; 或者您已经开设了网站&#xff08;博客&#xff09;&#xff0c;但难以从中获利&#xff1f; 别找啦&#xff01; 本课程旨在教授您使用 WordPress 创建成功盈利网站&#xff08;博…

python项目入门新手攻略

最近工作需要接手了代码量比较大的python开发的项目&#xff0c;平时写python不多&#xff0c;记录一下如何熟悉项目。 分析调用流程-pycallgraph 因为代码量比较大&#xff0c;所以希望通过工具生成代码调用流程&#xff0c;因此用到了pycallgraph。 pycallgraph&#xff0…

Android Studio 调试:快速入门指南

作为一名Android应用开发人员&#xff0c;调试是你不可或缺的技能之一。通过调试&#xff0c;你可以定位和解决各种问题&#xff0c;包括崩溃、性能问题、UI错误等。在本文中&#xff0c;我们将分享一些实用的Android调试技巧&#xff0c;帮助你提高应用开发效率。 Android St…