Java SE基本语法2

运算符

算术运算符

  • +:加法运算 数值+数值 数值+字符 连接 字符串+字符串 字符串+数值

  • -: 减法运算

  • *:乘法运算

  • /:除法运算

  • %:取余

  • ++:自增

  • –:自减

    ps.单独的++ --,++x x++没有区别;

    在混合运算中,++在前 先自增后运算,++在后先运算后自增

      int x=5;
      x++;//x=x+1
      ++x;//x=+1
      System.out.println (x );//7
    
      int x=5;
      int y=x++ + 1; //在混合运算时,++在后 先运算 后++
      int y=++x +1;//在混合运算时,++在前 先++ 后运算
      System.out.println (y );//6   7
      System.out.println (x );//6   6
    

    关系比较运算符

    < ,>,<=,>=只能进行数值之间的比较;

    ==,!=能进行数值之间的比较,还可以进行逻辑值与逻辑值之间的比较、引用类型之间的比较。

逻辑运算符

进行逻辑值与逻辑值之间的运算。

& (逻辑与):所有表达式为true,结果为true;出现第一个false,继续执行后面的表达式,结果为false。

&&(短路与):所有表达式为true,结果为true;出现第一个false,整个表达式短路,结果为false。

|(逻辑或):表达式中有一个为true,结果为true;出现第一个true,继续执行后面的表达式,结果为true。

||(短路与):表达式中有一个为true,结果为true;出现第一个true,整个表达式短路,结果为true。

!=(逻辑非)

^(异或):相同为false,不同为true。

赋值运算符

=:把右边的值赋给左边。

数据类型 变量 = 值; (注意数据类型,注意区分= ,==的区别)

+=,-=,*=,/=,%= 赋值运算(会隐式的数据类型转换)

  public static void main(String[] args) {
        /*
            =  右边的值赋给左边   注意数据类型   经常写== 写成=
            +=
            -=
            /=
            %=
         */
        int  a = 10;
        byte b = (byte) a;
        
        a+=b;
        System.out.println (a);
        
        short s=3;
        //s=s+2; //s= s(short类型)+ 2(int)
        s += 2; //隐式转换
  }

条件运算符

结果 =(条件表达式)? 成立执行:不成立执行

 int score=70;
 String res= (score>=60) ? "及格":"不及格";
 System.out.println (res);

位运算符

bit位进行运算。

移位

<< 左移 >>右移 >>> 无符号右移

 public static void main(String[] args) {
      int a=4;
        //0000 0100  4
      System.out.println (a<<1);//0000 1000  8
        
      int b=-6;
      System.out.println (b>>1 );//3 -3 有符号的移动 符号不变的
      System.out.println (b>>>1 );//3 2147483645  无符号右移 注意负数 移位后高位补0
 }

&:二进制bit位&运算,只有1&1时结果是1,否则是0。

|:二进制位进行 | 运算,只有0 | 0时结果是0,否则是1。

^:相同结果是0;不相同结果是1。

~:正数取反,各二进制码按补码各位取反;负数取反,各二进制码按补码各位取反。

控制台输入

控制台输入:在基础语法学习时,交互式的向程序中输入内容,实际程序中用不到。

public static void main(String[] args) {
     
        //在java程序中创建出一个输入对象
        Scanner s=new Scanner ( System.in );
        System.out.println ("请输入学号:" );
        int num=s.nextInt ();//输入一个整数,程序执行到nextInt()时,进入阻塞状态,按回车键表示输入完成
    
        System.out.println ("请输入姓名:" );
        String name =s.next ();
        
        System.out.println (num );
        System.out.println (name );
        
        
    }

流程控制语句

条件语句

if选择语句

if(条件表达式){条件成立执行}
if(条件表达式){条件成立执行} else {条件不成立执行}
if(条件表达式){条件成立执行} else if (条件表达式){条件成立执行}······
if(条件表达式){条件成立执行} else if (条件表达式){条件成立执行}··else{所有条件都不成立时执行}
public static void main(String[] args) {
        int num=2;
            if(num>3){
            System.out.println("num>3");
            }
        /*
           if(num>3)
               有效作用范围只有紧挨着的一行
              不是if的作用范围了
         */
        if (num>3)
            System.out.println ("num>3" );
        else
            System.out.println ("11111" );
            

switch语句

switch    
多路选择,    
一般用switch能实现的功能,用 if else语句都可以实现,   
区别?  什么时候用if   什么时候用switch                          
                    选项比较固定:一周有7天 一年12个月
                    
                    switch(表达式){
                    case1:代码块;[break];
                    case2:代码块;[break];
                    case 值n:代码块;[break];
                    default:默认代码块;
                }

//传入的表达式值 可以是byte short int char 枚举 String
		int w= //初始化一个w值; 
        switch(w){
            case 1:   //case 后面只能是字面量,不能重复的
                System.out.println ("星期一" );
                break;//添加break 终止,是否添加break,根据实际需要而定
            case 2:
                System.out.println ("星期二" );
                break;
            case 3:
                System.out.println ("星期三" );
                break;
            case 4:
                System.out.println ("星期四" );
                break;
            default://所有选项都不匹配时,执行default,否则跳出
                System.out.println ("无效日期" );
                
        }

循环语句

满足某种条件,一直重复做某件事情。

循环语法格式:

循环变量初始化,进入循环条件,循环体(循环中要执行的代码),循环变量的更新

循环方式:

while(进入循环的条件){  //while先条件判断,不成立就不能进入循环
    循环体;
}

do{                  //先执行,后判断,即使条件不成立,也会执行一次
    循环体;
}while(循环条件);

for(定义变量1;循环条件2;变量赋值4){
                    循环体3
            }
                先执行1(只执行1次)
                再执行条件判断2(多次)
                循环3(多次)
                变量赋值4(多次)

//while(true) 和 for(;;)的区别
           while(布尔值)
            {
                执行不知道循环次数
            }

           for循环一般用于执行循环已知的
            for(int i=0;i<5;i++){
            System.out.println(i)
            }


break和continue

break 在switch,循环中使用,表示结束当前的switch
break+ 循环标记 结束指定的循环
continue 在循环中使用 表示跳过本次循环

/*在内层循环中,结束外层循环*/
out:for(int i=1;i<=4;i++){ //为循环定义一个标记
    for(int j=1;j<=5;j++){
        if(j==3){
            break out;
        }
        System.out.print("*");
    }
    System.out.println();
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JIANG++

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值