zoukankan      html  css  js  c++  java
  • java学习笔记(day03)

    0x00 运算符

    1. 比较运算符

    大于:>
    小于:<
    大于等于:>=
    小于等于:<=
    相等:==【两个等号连写才是相等,一个等号代表赋值】
    不等:!=

    注意事项:

    1. 比较运算符的结果一定是布尔值,成立就是true,不成立就是false。
    2. 如果进行多次判断,不能连着写。

    2. 逻辑运算符

    与(并且):&& 全部满足,结果才为true
    或(或者):|| 有一项满足,结果即为true
    非(取反):!得到的结果取相反值

    与“&&”,或“||”具有短路效果:如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执行,从而节省一定的性能。

    注意事项:

    1. 逻辑运算符只能用于布尔值。
    2. 与、或需要左右各自有一个布尔值,取反只要有唯一的一个布尔值即可。
    3. 与、或两种运算符,如果有多个条件,可以连续写。

    3.三元运算符

    一元运算符:只需要一个数据就可以进行操作的运算符。例如:取反(!)、自增(++)、自减(--)。
    二元运算符:需要两个数据才可以进行操作的运算符。例如:加法(+)、赋值(=)。
    三元运算符:需要三个数据才可以进行操作的运算符。

    格式:
    数据类型 变量名称 = 条件判断 ?表达式A:表达式B;

    流程:
    首先判断条件是否成立:
    如果成立为true,那么将表达式A的值赋值给左侧的变量;
    如果不成立为false,那么将表达式B的值赋值给左侧的变量;
    二者选其一。

    0x01 方法入门

    1.什么是方法

    方法就是讲一个功能抽取出来,把代码单独定义在一个大括号内,形成一个单独的功能。当我们需要这个功能的时候,就可以去调用。这样实现了代码的复用性,也解决了代码冗余的现象。

    2.定义一个方法

    定义一个方法的格式:
    public static void 方法名称(){
    方法体
    }

    方法名称的明明规则和变量一样,使用小驼峰。
    方法体:也就是大括号当中可以包含任意条语句。

    3.方法定义的注意事项

    1. 方法定义的先后顺序无所谓。
    2. 方法的定义不能产生嵌套包含关系。
    3. 方法定义好了之后,不会自己执行,如果想要执行,一定要进行调用。

    4.如何调用方法

    格式:

    方法名称();

    0x02 编译器的两点优化(了解)

    优化1

    对于 byte/short/char三种类型来说,如果右侧赋值的数值没有超过范围,那么编译器会自动隐含的帮我们进行强制类型转换。

    注意事项:

    1. 如果右侧没有超过左侧的范围,编译器补上强转。
    2. 如果右侧超过了左侧的范围,那么编译器直接报错。

    优化2

    在给变量进行赋值的时候,如果右侧的表达式当中全都是常量,没有任何变量,那么编译器将会直接将若干个表达式计算得到结果。
    如果结果是在左侧范围内,就不会报错。
    也就是说,不用进行强制数据类型转换,编译器会在计算出结果之后自动帮你进行强转。
    但是要注意,表达式当中不能有变量参与,不然就不能进行该优化。

    流程控制

    概述
    在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的,也就是说,程序的流程对运行结果有直接影响。所以我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。

    1.顺序结构

    在程序执行的过程中,代码的执行顺序是从上往下执行的,这就是java程序的顺序结构。

    2.判断结构(判断语句)

    判断语句:单if语句

    格式:
    if (关系表达式){
    语句体;

    执行流程:

    1. 首先判断关系表达式看其结果是true还是false。
    2. 如果是true就执行语句体。
    3. 如果是false就不执行语句体。
    判断语句:if...else

    格式:
    if (关系表达式) {
    语句体1;
    } else {
    语句体2;
    }

    执行流程:

    1. 首先判断关系表达式看其结果是true和false。
    2. 如果是true就执行语句体1。
    3. 如果是false就执行语句体2。
    判断语句:if...else if ...else

    格式:
    if (判断条件1) {
    执行语句1;
    } else if (判断条件2) {
    执行语句2;
    }
    ...
    } else if (判断条件n) {
    执行语句n;
    } else {
    执行语句n+1;
    }

    执行流程:

    1. 首先判断关系表达式1看起结果是true还是false。
    2. 如果是true就执行语句1。
    3. 如果是false就继续判断关系表达式2,看其结果是true还是false。
    4. 如果是true就执行语句2。
      5.如果是false就继续判断关系表达式,看其结果是true还是false。
      ...
    选择语句:switch

    格式:
    switch (表达式) {
    case 常量值1:
    语句体1;
    break;
    case 常量值2:
    语句体2;
    break;
    ...
    default:
    语句体n+1;
    break;
    }

    执行流程:

    1. 计算出表达式的值
    2. 和case依次比较,一旦有对应的值,就会执行相应的语句,在执行过程中,遇到break就会结束。
    3. 如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

    注意事项:

    1. 多个case后面的数值不可以重复。
    2. switch后面小括号当中只能是下列数据类型:
      基本数据类型:byte/short/char/int
      引用数据类型:String(字符串)/enum(枚举)
    3. switch语句格式可以很灵活:前后顺序可以点到,而且break语句可以省略。(省略的话,可能会造成穿透)
      “匹配哪一个case就从哪一个位置向下执行,知道遇到了break或者整体结束为止。”
    文章未经本人允许,禁止转载。 有技术问题,可加好友讨论。 联系方式:QQ:MjgxMjMxODAzNQ== 微信:bzNycjByLVhpYW9taW5n
  • 相关阅读:
    Mac开发者常用的工具
    10个常见的缓存使用误区
    果壳摘选
    WPF 无缝图片滚动
    WinForm 子线程修改主线程(UI线程)
    如何在WinForm中发送HTTP请求
    新闻接口调用之新浪滚动新闻
    使用json-lib进行Java和JSON之间的转换
    转载 一位程序员的妻子讲述她老公教给她了什么
    sae 上传文件 java实现
  • 原文地址:https://www.cnblogs.com/Xiaoming0/p/13741116.html
Copyright © 2011-2022 走看看