JAVA基础语法

注释、标识符、关键字

注释

  • 三种注释类型

    • 单行注释:// 注释内容

    • 多行注释:/* 注释内容 */

    • 文档注释:/** 注释内容 */

标识符

  • 关键字

    Java所有的组成部分都需要自己的名字。类名、变量名、以及方法名都被称为标识符

     

    标识符注意点

    • 所有的标识符都应该以字母(A-Z或a-z)、美元符($)、或者下划线(_)开始

    • 首字符之后可以是字母(A-Z或a-z)、美元符($)、下划线(_)数字的任何字符组合

    • \textcolor{red}{不能使用关键字作为变量名或方法名}

    • 合法标识符是大小写大小写敏感

    • 合法标识符举例:age、$salary、_value、__1_value

    • 非法标识符举例:123abc、-salary、#abc

    • 可以使用中文命名,但是一般不建议这样使用 

数据类型

  • 强类型语言

    • 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

  • 弱类型语言

  • Java的数据类型分为两大类

    • 基本类型(primitive type)

    • 引用类型(reference type)

    •  

什么是字节

  • 位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数

  • 字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示。

  • 1B(byte,字节)=8bit(位)

  • 字符:是指计算机中使用字母、数字、字和符号

    1bit表示1位

    1Byte表示1个字节 1B=8b

    1024B=1KB

    1024KB=1M

    1024M=1G

    public class Student {
        public static void main(String[] args) {
            //八大基本数据类型
            //整数
            int num1 = 10;//最常用
            byte num2 = 20;
            short num3 = 30;
            long num4 = 40L;//long类型要在数字后面加个L
            //小数:浮点数
            float num5 = 50.1F;//float类型要在数字后加F
            double num6 = 3.141592653589793238462643;
            //字符
            char name = 'A';
            //字符串,String不是关键字,是类
            String name1 = "中国";
            //布尔值:是、非
            boolean flag = true;
            boolean flag1 = false;
    ​
    ​
        }
    }
    ​

    整数拓展:

    public class Student {
        public static void main(String[] args) {
            //整数拓展:进制:二进制0b  十进制  八进制0  十六进制0x
            int i = 10;
            int i2 = 010;//八进制0
            int i3 = 0x10;//十六进制0x 0~9 A~F 16
    ​
            System.out.println(i);
            System.out.println(i2);
            System.out.println(i3);
            System.out.println("=======================");
        }
    }

    浮点数拓展:

     //浮点数拓展:银行业务怎么表示? BigDecimal
            //float 有限 离散 舍入误差 大约 接近但不等于
            //最好避免完全使用浮点数进行比较
            float f=0.1f;  //0.1
            double d=1.0/10;  //0.1
            System.out.println(f==d);  //false
            System.out.println(f);
            System.out.println(d);
    ​

    字符拓展:

       //字符拓展
            char c1 = 'a';
            char c2 = '中';
            System.out.println(c1);
            System.out.println((int)c1);//强制转换 将字符转换为数字
            System.out.println(c2);
            System.out.println((int)c2);//强制转换
            //所有的字符本质还是数字
            //编码 Unicode 表:(97=a 65=A) 2字节 0~65536
            char c3 = '\u0061';
            System.out.println(c3);
            //转义字符
            //\t 制表符
            //\n 换行
            System.out.println("Hello\nWorld!");

    布尔值拓展:

    //布尔值扩展
            boolean flag = true;
            if (flag==true){}  //新手
            if (flag){}  //老手
            //if (flag){} 和if (flag==true){} 表示的意思一样

类型转换

强制转换:(类型)变量名 高——低(的转换)

  • 由于java是强类型语言,所以要进行有些运算的时候需要用到类型转换。

  • 运算中不同类型的数据转化为同一类型,然后进行运算。

    优先级

  •  

自动转换

 

 

 

public class Demo02 {
    public static void main(String[] args) {
        int i = 128;
        byte b = (byte)i;//i是整型,需强制类型转换
        //因为byte范围是-128-127,而i=128,内存溢出
        //强制转换:(类型)变量名  高——低(的转换)
        System.out.println(i);
        System.out.println(b);
        //自动转换:低——高
        int i2 = 128;
        double b2 = i;
        System.out.println(i2);
        System.out.println(b2);
        /*
        注意:
        1.不能对boolean进行转换
        2.不能把对象类型转换为不相干的类型
        3.在把高容量转换到低容量的时候,强制转换
        4.转换的时候可能存在内存溢出,或者精度问题!
         */
        System.out.println("=============================");
        System.out.println((int)23.7); //23
        System.out.println((int)-45.89f);  //45
​
        System.out.println("=============================");
        char c = 'a';
        int d = c+1;
        System.out.println(d);
        System.out.println((char)d);
    }
}
​

注意: 1.不能对boolean进行转换 2.不能把对象类型转换为不相干的类型 3.在把高容量转换到低容量的时候,强制转换 4.转换的时候可能存在内存溢出,或者精度问题!

public class Demo03 {
    public static void main(String[] args) {
        //操作比较大的数的时候,注意溢出问题
        //JDK新特性,数字之间可以用下划线分割
        int money = 10_0000_0000;
        int years = 20;
        int total = money * years; //-1474836480,计算的时候溢出了
        long total2 = money * years;//默认是int,转换之前已经存在问题了
        long total3 = money * ((long)years); //先把一个数转换为long
        System.out.println(total);
        System.out.println(total2);
        System.out.println(total3); //20000000000
    }
}
​
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值