基础语法二(运算符与包机制)

基础语法

运算符

  • 算数:+, - ,* , / ,%, ++ ,--

  • 赋值:=

  • 关系:> , < ,==,!=

  • 逻辑:&& , ||, ! 与,或,非

  • 位运算符:&,|,^, ~,>>,<<,>>> (了解)

  • 条件:?:

  • 拓展赋值:+=,-=,*=,/=

除法:int 类型是按整除结果算,如果两个数不能整除,那结果就会不对。 double、BigDecimal等如果你不设置精度的话,那它默认就会以你的两个数中精度大的那个来设置一个精度

算数运算符

自增与自减

//一元运算符: ++ -- 自增自减    a++,++a 执行时间不同
int a = 3;
​
int b = a ++;   //执行这行代码后,先给b赋值(将a的值赋给b),a再自增
//a++ 表示 a=a+1 在赋值后进行
System.out.println(a);
​
// a=a+1 在赋值前进行
int c = ++a;   //执行这行代码前,先自增,再给c赋值
​
System.out.println(a);
System.out.println(b);
System.out.println(c);
​
输出结果
4
5
3
5
    int x = 2;
    int y = 1;
    x *= y + 1;
        System.out.println(x);
​
 x *= y + 1; 等价于  x=x*(y+1)
​

逻辑运算符

boolean a = true;
boolean b = false;
​
System.out.println("a&&b:"+(a&&b));       //与,and
System.out.println("a||b:"+(a||b));       //或,or
System.out.println("!(a&&b):"+!(a&&b));   //非,not
​
//短路运算
//a&&b 与 a||b均为短路运算
若a为假,直接返回假,不执行&&运算符及其后面语句
//短路运算测试
int c = 5 ;
boolean d = (c<4)&&(c++<4);   //判断c<4,即为假,后面若继续执行,c将执行自增变为6,但结果为6,说明未自增,即未执行
​
System.out.println(c);
System.out.println(d);
​
​
结果
a&&b:false
a||b:true
!(a&&b):true
5 
false

位运算符

/*
A = 0011 1100
B = 0000 1101
​
A&B = 0000 1100  #位置对应相乘,有0即为0,无0为1
A|B = 0011 1101  #有1即为1,其余为0
A^B = 0011 0001  #相同为0,相反为1 异或
~B  = 1111 0010  #与B相反
   */
​
/*左移右移相关问题
<<  表示*2
>>  表示/2
​
0000 0000    0
0000 0001    1
0000 0010    2
0000 0100    4
0000 1000    8
0001 0000    16
​
一道算法题!
求2*8的最快求法
= 2*2*2*2
​
 */
System.out.println(2<<3);

拓展运算符以及字符串连接

int a = 10;
int b = 20;
​
a+=b;  //即为a=a+b
​
System.out.println(a);
​
//字符串连接符   +, String
System.out.println(""+a+b);    //""在前面,后面的a,b均变为字符串连接
System.out.println(a+b+"");    //""在后面,先运算 a+b
System.out.println(a+""+b);    //""在后面,先运算 a+b
​
结果
30
3020
50
3020
​

三元运算符

public class demo8 {
    public static void main(String[] args) {
        // x ? y :z
        // 如果x==true,则结果为y,否则结果为z
        int score = 80 ;
        String type = score < 60 ? "不及格":"及格";     // 必须掌握
        System.out.println(type);
    }
}

优先级

多使用()

包机制

类似于文件夹

一般用公司域名倒置,作为包名

package com.kuang.base   //注意此行放在最前!!!

为了能够使用某一包的成员,使用import 语句明确导入

import package1[.package2....].(classname|*) //* 通配符,全部类

快捷键:alt + enter

不需要导包的情况:

  • 调用自己包里面的类(class)

  • Java.lang包下的所有内容都不需要导包

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值