java loop with an array of learning

Basic usage Assignment operators

赋值运算符有哪些:
    =, +=,-=,*=,/=,%=
    a+=1等价于a=a+1,-=同理
注意事项:
    1.基本的赋值运算符:=
        把=右边的数据赋值给左边。
        
    2.扩展的赋值运算符:+=,-=,*=,/=,%=
        举例说明
            a+=1等价于a=a+1,其他同理
    3.赋值运算符要求左边的数据必须是一个变量

Relational Operators

关系运算符有哪些:
    == ,!= , < , > , <= , >= , instanceof
注意事项:
    无论你的操作是简单还是复杂,结果是boolean类型。
    "=="不能写成"="。

Logical Operators

逻辑运算符有以下几种:
    &(与),|(或),!(非),^(异或),&&(短路与),||(短路或)
    注意:
        1.逻辑运算符一般用于对布尔类型进行运算。
        2.表达式:就是运算符把常量或者变量连接起来符合java语法的式子。
            算数表达式:a+b
            关系表达式:a==b
            当然还有逻辑表达式:false && false、false || true、false | true
逻辑表达式的使用与规律:
    &逻辑与:有false则结果一定为false,必须两边都为true结果才为true。
    |逻辑或:有true则结果一定为true,必须两边都为false结果才为false。
    ^逻辑异或:相同则为false,不同则为true
        形象的生动举例:性别配对   男女在一起则是正确的,玻璃和百合则是错误的(这里没有对同性恋的其实只是举例子)
    !逻辑非:这个就好理解了不(!)对(true)那就是错(false),不(!)错(false)那就是对(true)
    重点啦!逻辑运算符短路与和短路或:
        &&之所以称它为短路是因为&运算有个规律就是如果与符号左边是true其结果一定为true,左边     为false则结果一定为false。但是&运算符它会将左边和右边的数据进行逻辑运算。这样是不是多此一    举而且还影响效率,那么短路&&就是为了解决这个才产生的。
        ||与&&其实意思一个意思但是,需要注意||只有当左边为true的时候才会发生短路,左侧为       false的时候还是要进行正常的逻辑运算。

Bitwise Operators Usage

位运算符符号:
    &(与),|(或),^(异或),~(按位取反),<<(左移),>>(右移),>>>(无符号右移动)
&,|,^,~ 的用法(其实和boolean逻辑运算相同可以把1当成true,0当成false):
    举例2&5:   
        左边的2的二进制      00010
        右边5的二进制        00101
        位运算结果           00111   
    需要注意:
        1.位运算符两边是对一个数的“二进制补码"进行位的与运算。
        2.符号位也参与&,|,^,~ 的位运算
    结论:
        &:有0则0       同逻辑&相似
        |:有1则1       同逻辑|相似
        ^:相同则为0     通逻辑^相似
            注意:1.一个数被另一个数位异或两次该数不变
                 2.一个是0与一个数做异或操作还是本身,本身与本身做异或操作为0
        ~:按位取反      同逻辑!相似 举例:2对应的二进制数10补码也是10   ~2结果是01(01的    补码也是01)     算出来的补码就是01转换成输出值就是-3
位运算符的左移和右移以及无符号右移:
    位移符号:
        <<:左移         空位补0,被移除的高位丢弃
        >>: 右移         被移位的二进制最高位是0,右移后,空缺位补0.最高位是1则高位补1
        >>>: 无符号右移   被移位二进制最高位无论是0或者是1,空缺位都用0补。
    位运算符可以用来计算而且效率比以往计算方式要搞:
        使用方式
        <<: 把<<左边的数据乘以2的移动次幂   例如 10<<3    结果 10*2^3=80
        >> : 把>>左边的数据除以2的移动次幂   例如 40>>3    结果 40/2^3=5
        

Ternary operator

三元运算符的格式为:
    (关系表达式)?表达式1:表达式2:
    例子比较两个数的大小
    int a=(10>20)?10:20; 输出为20
三元运算符的处理过程:
    首先通过关系表达式里面进行判断如果成立则为true,那么就输出表达式1里面的值,负责输出表达式2    中的值
三元运算符的条套举例说明:
    例如比较三个数a,b,c的大小。通过三元运算符计算:
        int max=a>b?(a>c?a:c):(b>c?b:c);        

Explain the basic format of the keyboard input data

用法:
    1.首先在class类上面导入包使用代码 import java.util.Scanner
    2.创建录入对象 Scanner sc=new Scanner(System.in);
  3.通过对象获取数据
     格式:
        int number=sc.nextInt(); //当程序运行到这里的时候就会阻塞住,需要等待用户输入       然后回车。
     注意int初始化的是什么类型那么用户就必须输入相应的数据类型。

Sentence structure learning

选择语句结构if与swicth:
    if语句结构:
        一般的形式  : 
          if(表达式)
              {语句体1}
          else
            {语句体2}
          else if形式:
          if(表达式)
            {语句体}
          else if()
            {语句体}
          .....
          else
            {语句体}
    if嵌套语句结构:
        if(表达式)
            {if(语句体)
                {
                语句体
                }
            }
        eles
        {语句体}
    if的执行流程:
        1.首先计算比较表达式的值,看其返回值是true还是false。
        2.如果是true,就执行语句体1;
        3.如果是false,就执行语句体2;
    switch语句结构:
        switch(表达式){
            case 值1:
                语句体1;
                break;
            case 值2:
                语句体2;
                break;
            case 值3:
                语句体3;
                break;
            ....
            default:    
                语句体n+1;
                break;
    switch语句的格式解释:
    
        1.表达式的取值:byte,short,int,char
        2.JDK5以后可以是枚举(什么是枚举,以后再讲)
        3.JDK7以后可以是String
        4.case后面跟的是要和表达式进行比较的值
        5.语句体部分可以是一条或多条语句
        6.beak表示结束的意思,可以结束switch语句,如果不写break则会继续执行直到碰到         break或者整个语句执行完毕才会停止。
        7.dfault语句表示所有case都不匹配的时候,就执行该处的内容,和if语句的else相似
    总结:
        语句结构这块建议多练多思考就是一些逻辑的运算。

Guess you like

Origin www.cnblogs.com/project-zqc/p/11615973.html