标识符、基本类型、类型转换、变量、常量、进制类型、运算符

标识符

public class Ademo01 {
//    java标识符
    public static void main(String[] args) {
        String 星星="study";//一般不建议变量直接用中文表示
//        大小敏感
        String Man="qingtong";
        String man="baiyin";
        String name="qingtong";
        System.out.println(Man);
        System.out.println(man);
    }
}

数据基本类型

public class Ademo02 {// 八大基本类型
    public static void main(String[] args) {
        int num1=10;
        byte num2=20;
        short num3=30;
        long num4=30L;//Long类型要在数字后面加上L
         // 小数:浮点数
        float num5=50.1F;//float类型要在数字后面加上F
        double num6=3.14159;
         // 字符
        char name='中';//char name='中国';这是不对,代表了俩个字符
        /*  字符串String:不是关键字,是类
            String name="中国"     */
        //布尔型:是非
        boolean flag=true;
        //boolean flag=false;
    }
}

变量

所有变量都必须先定义才能使用

public class Ademo03 {//所有变量都必须先定义才能使用
    public static void main(String[] args) {
/*        String a;
          System.out.println(a);这样子是不可以的,因为在局部变量里面需要先定义才能使用
*/
        String a="hello";//这里是可以的因为,已经定义了
        System.out.println(a);
    }
}

类变量、示例变量、局部变量

public class Bdemo01 {//变量   分为:实例变量、类变量、局部变量
    //实例变量:从属于对象  可以不给初值
    // 在实例变量如果不进行初始化,这个类型的默认值 0或0.0   布尔值:默认类型是false  除了基本类型,其余的默认值都是null
    String name;
    int age;

    //类变量(静态变量)
    static  double salary=5000;//它必须要加上static关键字  如果不加,在main方法中是不能输出的

    public static void main(String[] args) {//main方法:
        //局部变量:必须声明和初始化
        int i=10;
        System.out.println(i);//10

        //变量类型  变量名=new Bdemo01()
        Bdemo01 bdemo01=new Bdemo01();
        System.out.println(bdemo01.age);//0
        System.out.println(bdemo01.name);//null

        //类变量
        System.out.println(salary);//5000.0
    }
    //其他方法
    public void add(){

    }
}

常量

public class Bdemo02 {//常量
    //语法:  fainl 常量名=值
    static  final double PI=3.14;//final static  double PI=3.14;这样也可以,因为修饰符不存在先后顺序
    public static void main(String[] args) {
        System.out.println(PI);//3.14

    }
}

进制的类型

public class Ademo04 {
    public static void main(String[] args) {
        //扩展知识:进制:二进制:0b开头  十进制:0开头    十六进制:0x开头
        //整型
        int i = 10;//十进制
        int i2 = 010;//八进制
        int i3 = 0x10;//十六进制
        System.out.println(i); //10
        System.out.println(i2); //8
        System.out.println(i3); //16

        //浮点数扩展
        float f=0.1f;//0.1
        double d=1.0/1.0;   //0.1
        System.out.println(f==d);//false
        //总结:float 和double是不同的数据类型,并且在最好完全使用浮点数进行比较

        float d1 = 2131231231f;
        float d2=d1+1;
        System.out.println(d1==d2);//true
        //总结;float  是有限的,离散的,舍入误差,大约 接近但不等于
    }
}

类型转换

public class Ademo05 {
    public static void main(String[] args) {//类型转换
        //运算中,不同类型的数据先转化为同一类型,然后进行运算。
        //强制类型转换:  (类型)变量名     高——>低
        //自动类型转换:  低——>高
        int i =128;
        byte b = (byte)i;
        double d=i;//自动类型转换:  低——>高   128.0
        System.out.println(i);//128
        System.out.println(b);//-128   因为byte的范围是-128~127  这里产生了溢出问题
    }
}

运算符

public class Bdemo04 {
    public static void main(String[] args) {
        //快捷键:ctrl+D  :复制当前一行到下一
        //算术运算符: +,-,*,/,%,++,--
        //二元运算符
        int a=10;
        int b=15;
        int c=20;
        int d=25;
        System.out.println(a+b);//25
        System.out.println(a-b);//-5
        System.out.println(a*b);//150
        System.out.println(a/b);//0
        System.out.println(a++);//10
        System.out.println(++b);//16
        System.out.println(c--);//20
        System.out.println(--d);//24

        //基本类型的扩展
        long aa=123123123123123L;
        double aa1=123321;
        float bb1=10;
        float bb2=12;
        int bb=123;
        short cc=10;
        byte dd=8;
        System.out.println((aa+bb+cc+dd)); //Long类型 123123123123264
        System.out.println((bb + cc + dd));//Int类型 141
        System.out.println((cc + dd));//Int类型  18
        System.out.println(aa1+aa);//double类型  1.23123123246444E14
        System.out.println(aa1+dd);//double类型  123329.0
        System.out.println(aa1+bb1);//double类型  123331.0
        System.out.println(bb1+bb2);//float类型   22.0
    }
}
/*总结:如果两个操作数有一个为Long, 则结果也为long
       没有long时,结果为int。即使操作数全为shot,byte,结果也是int.
       如果两个操作数有一个为double, 则结果为double. 只有两个操作数都是float, 则结果才为float.
*/

关系运算符

public class Bdemo05 {
    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
        System.out.println(a==b);//false
        System.out.println(a!=b);//true

    }
}

逻辑运算法

public class Cdemo01 {
    public static void main(String[] args) {
        //逻辑运算符 :&&(与) ||(或)  !(非):去反
        boolean a=true;
        boolean b=false;
        System.out.println(a&&b);//false
        System.out.println(a||b);//true
        System.out.println(!(a&&b));//true   如果为假变为真

        //短路运算符
        int c=5;
        boolean d=(c<4)&&(c>4);//如果判断一个为假就不会在执行之后
        System.out.println(d);//false


        /*位运算: &,|,^,~ , >>(右移),<<(左移),>>>
        例如: A  0011 1100
              B  0000 1101

             A&B=0000 1100  与运算:如果各自对应的位都为1,才为1
             A|B=0011 1101   或运算:如果各自对应都为0,才为0,否则为1
             A^B=0011 0001   异或:如果对应为相同就为0,不相同就为1
              ~B=1111 0010   取反:和原来相反
         */

        //>>(右移):相当与除2     <<(左移):相当与乘2
           //二进制      移动(左移)
        /*0000 0000      0
          0000 0001      1
          0000 0010      2
          0000 0100      3
        右移同理:只是反过来而已
        */
        System.out.println(2<<3);//16
    }
}

遇见狂神说

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值