Java变量+运算4---狂神说java--bilibili

变量

type varname [=value] [{,varName[=value]}]; //不建议一行定义多个变量名
// 数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型变量。

注意

  1. 每个变量都有类型,基本类型/引用类型;

  2. 变量名必须是合法的标识符;

  3. 每一个声明都必须以分号结束;

变量作用域

  • 类变量 static

  • 实例变量

  • 局部变量

public class Demo07 {
    //类变量  static
    static double salary = 2500;
​
    //属性;变量
​
    /*实例变量:从属于对象;
    若不设置初始化值,则输出默认值: 0 0.0
    布尔值:默认是false
    除了基本类型,其余的默认值是null
​
     */
    String name;
    int age;
​
​
    //main方法
    public static void main(String[] args) {
​
        //局部变量;必须声明和初始化值
        int i = 10;
        System.out.println(i); //10
​
        //变量类型 变量名 = new Demo07();
        Demo07 demo07 = new Demo07();
        System.out.println(demo07.age); //0
​
        //类变量  static 从属于类
        System.out.println(salary); //2500.0
​
    }
    //其他
    public void add(){
​
    }
​
}

常量(Constant)

常量: final 初始化后不能再改变值!

  • 常量名一般使用大写字母

final 常量名 = 值;
final double PI = 3.14;
public class Demo09 {
    
    //修饰符,不存在先后顺序 final static double PI = 3.14;也行
    static final double PI = 3.14;
    
    public static void main(String[] args) {
        System.out.println(PI); //3.14
    }
}

变量的命名规范

  • 变量、方法、类名:见名知意

  • 类成员变量、局部变量、方法名:首字母小写和驼峰原则:monthSalary 除第一个单词,后面单词首字母大写

  • 常量:大写字母和下划线:PI_VALUE

  • 类名:首字母大写和驼峰原则:GoodDay


运算符

  • 算术运算符: +, -, *, /, %(模运算,取余),++,--

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

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

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

  • 位运算:&, |, ^, ~ (按位取反), >> , << ,>>>(高位补零)

  • 条件运算符 ?:

package operator;
//二元运算符
public class Demo01 {
    public static void main(String[] args) {
        
        //ctrl+d :复制当前行到下一行
        int a = 10;
        int b = 20;
        int c = 30;
        int d = 40;
        int e = 52;
​
        System.out.println(a+b);  //30
        System.out.println(a-b);  //-10
        System.out.println(a*b);  //200
        System.out.println(a/(double)b);  //0.5
        System.out.println(e%a);  //2 取余
    }
}
package operator;
​
public class Demo02 {
    public static void main(String[] args) {
        long a = 222222222L;
        int b = 120;
        short c = 5;
        byte d = 10;
​
        System.out.println(a+b+c+d);  //long 222222357
        System.out.println(b+c+d);  //int 135
        System.out.println(c+d);    //int  15  转换:cast
    }
}
  • 运算中有Long 结果为Long

  • 运算中有double 结果为double

package operator;
//关系运算符
public class Demo03 {
    public static void main(String[] args) {
        //关系运算符结果返回 False,True
​
        int a = 10;
        int b = 20;
​
        System.out.println(a>b);    //false
        System.out.println(a<b);    //true
        System.out.println(a==b);   //false
        System.out.println(a!=b);   //true
    }
}
package operator;
// 自增,自减
public class Demo04 {
    public static void main(String[] args) {
        //++,--  自增,自减
        int a = 3;
        int b = a++;    //a++,执行完这行代码后,先赋值给b,再自增
        // a++  ,a = a+1; a=4
        System.out.println(a);  //4
        //++a  ,a=a+1
        int c = ++a;    //++a,执行这行代码前,先自增,再给c赋值
​
        System.out.println(a);  //5
        System.out.println(b);  //3
        System.out.println(c);  //5
​
        //幂运算 2^3 2*2*2=8,使用工具类计算
        double pow = Math.pow(2,3);
        System.out.println(pow);    //8
    }
}
package operator;
​
//逻辑运算符
public class Demo05 {
    public static void main(String[] args) {
        //&&与(and) ||或(or) !非(取反)
        boolean a = true;
        boolean b = false;
​
        System.out.println("a && b: "+(a&&b));  //a && b: false
        System.out.println("a || b: "+(a||b));  //a || b: true
        System.out.println("!(a && b):"+ !(a && b));  //!(a && b):true
        
        //短路运算
        int c = 5;
        boolean d = (c<4)&&(c++<4);
        System.out.println(d);  //false
        System.out.println(c);  //5
        
         boolean e = (c++<4)&&(c<4);
        System.out.println(e);  //false
        System.out.println(c);  //6
    }
}
package operator;
​
//位运算
public class Demo06 {
    public static void main(String[] args) {
        /*
        A = 0011 1100
        B = 0000 1101
        ------------------------------------------
        A&B = 0000 1100  对应位为1则1,否则0
        A|B = 0011 1101  对应位为0则0,否则1
        A^B = 0011 0001  对应位相同则0,否则1
        ~B = 1111 0010   按位取反
​
        -----------------------------------------
        2*8 = 16 2*2*2*2
        效率极高!!
        <<  左移 *2
        >>  右移/2
​
​
        0000 0000       0
        0000 0001       1
        0000 0010       2
        0000 0011       3
        0000 0100       4
        0000 1000       8
        0001 0000       16
​
         */
        System.out.println(2<<3);
    }
}
package operator;
​
public class Demo07 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
​
        a+=b; //a = a+b
        a-=b; //a = a-b
        System.out.println(a);  //10
        System.out.println(a+b);    //30
​
        //字符串连接符 + ,String
        System.out.println(""+a+b); //1020  ""+拼接a(10)和b(20)
        System.out.println(a+b+""); //30  会运算前面的
    }
}
package operator;
​
//三元运算符
public class Demo08 {
    public static void main(String[] args) {
        //x ? y : z
        //如果x==true,则结果为y,否则为z
​
        int score = 90;
        String type = score <60 ?"不及格":"及格";        //必须掌握
        System.out.println(type);
    }
}

优先级

()一元运算符 , +-*/,位,

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值