java 基础语法

注释

三种注释

  1. 单行

  2. 多行

    • /*
    • */
  3. 文档

    • /**

    • */

有趣的代码注释

/***

  •                _ooOoo_
    
  •                o8888888o
    
  •                88" . "88
    
  •                (| -_- |)
    
  •                O\ = /O
    
  •                ____/`---'\____
    
  •                .   ' \\| |// `.
    
  •                / \\||| : |||// \
    
  •                / _||||| -:- |||||- \
    
  •                | | \\\ - /// | |
    
  •                | \_| ''\---/'' | |
    
  •                \ .-\__ `-` ___/-. /
    
  •                ___`. .' /--.--\ `. . __
    
  •                ."" '< `.___\_<|>_/___.' >'"".
    
  •                | | : `- \`.;`\ _ /`;.`/ - ` : | |
    
  •                \ \ `-. \_ __\ /__ _/ .-` / /
    
  •                ======`-.____`-.___\_____/___.-`____.-'======
    
  •                `=---='
                    *
    
  •                .............................................
    
  •                佛祖保佑             永无BUG
                    */
    

————————————————
版权声明:本文为CSDN博主「Mr_YDK」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ydk888888/article/details/81563608

标识符和关键字

  • 大小写字母 美元$ 下划线 开始
  • 关键字不能命名 大小写敏感

数据类型

  • 强类型语言

  • 所有变量 必须先定义在使用

java的数据类型分为;两大类

  • 基本类型(primitive type)

    • 整数类型
    • 浮点类型
    • 字符类型 char
  • 引用类型(reference type)

数据类型扩展

进制的表示

二进制:以0b开头,填充的值为0,1

八进制:以0开头,填充的值为0,1,2,3,4,5,6,7

十六进制:以0x开头 填充的值为0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f

  // 二进制
  int a = 0b0010;
  int a1 = 0b0012; // 错误 二进制填充的值为0,1
  System.out.println(a); // 2
  // 八进制
  int b = 0010;
  int b1 = 0018; // 错误 八进制填充的值为0,1,2,3,4,5,6,7
  System.out.println(b); // 8
  // 十六进制
  int c = 0x0010;
  int c1 = 0x001h; // 错误 十六进制填充的值为0,1,2,3,4,5,6,7,8,9,a,b,c,e,f
  System.out.println(c); // 16

public class Hello04 {

    public static void main(String[] args) {
        int i = 10;
        int i1 = 010;
        int i2 = 0x10;
        System.out.println(i);
        System.out.println(i2);
        System.out.println(i1);
      /*  10
        16
        8
*/

    }
}

使用浮点数会精度缺失

银行业务不用浮点数标识 使用BigDecimal

字符型 (int)强制转换

  char c1 = 'a';
        char c2 = '中';
        char c3 = '\u0061';
        System.out.println((int) c1);
        System.out.println(c1);
        System.out.println((int)c2);
        System.out.println(c3);
/*
        97
        a
        20013
        a
*/

转义字符 \t空格 \n换行

布尔值扩展

Boolean flag = true;
if (flag){
    
}

类型转换

  1. 不能对布尔类型的转换

  2. 高转低强制转换

  3. 转换会存在精度问题

溢出 超出

  1. Java的基本数据类型包括八种:

    整数类型(byte,short,int, long)

    浮点数类型(double,float)

    布尔类型(bool ean)

    字符类型(char)

    类型从小到大依次为:

    ​ byte short int long float double

    ​ (char)

1.JAVA基本类型之间转换的两种方式:

1).自动(隐式)类型转换:从小类型到大类型,不需要强制转换符

Java基本数据类型转换详解

此处将int类型变量a的值赋值给double类型变量b,因为是小类型转换成大类型,int类型变量a的值会自动转换成double类型并赋值给变量b

2).强制类型转换:从大类型到小类型,需要强制转换符实现强制转换

强制转换符:(需要转换成的类型)变量

Java基本数据类型转换详解

此处将double类型变量a的值赋值给int类型变量b,因为是大类型转换成小类型,需要强制转换符先将double类型变量a的值转换成int类型再赋值给int类型变量b

2.关于byte、short、char赋值与运算的强转规则:

1).不参与运算,整数直接量可以直接赋值给byte,short,char,不需要强转。

2).byte,short,char型变量参与运算时,需要强转

Java基本数据类型转换详解

b1与b2不参与运算,整数直接量可以直接赋值给byte;参与运算后,b1+b2和的值默认为int类型,需要强制转换成byte类型再赋值给byte类型变量b3

END

注意事项

  • 强转有可能产生精度丢失
  • 例如:double类型变量a的值为5.123,强制转换成int类型后数值为5,小数位舍弃,产生了精度丢失。

变量

实例变量

不初始化 默认为0 0.0

布尔 为 false

其余为空

类对象

使用static关键字 不用 new 类

局部变量

必须先声明 并赋予初始值

常量

final 关键字 定义的变量大写 final double PI = 3.14;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5nSLVaJn-1616422177355)(C:\Users\AppData\Roaming\Typora\typora-user-images\image-20210322211217375.png)]

运算符

operator

   public static void main(String[] args) {
        int  a = 3;

        int b = a++; //先赋值 再加加
       // a = a+1;
       // a = 4
        int c = ++a; //先加加 再赋值
       // a = a+1;
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
    }
     /*     5
            3
            5*/



&& ||

与或非运算符

短路运算

		int a = 3;
		boolean d = (a<3) && (a++>a);//第一个条件不成立 第二个条件不执行 反之a= 4
        System.out.println(d);
        System.out.println(a);
       /* false
        3*/

位运算

   //         位运算         2*8
        System.out.println(2<<3);
   //16

三元运算符

  		System.out.println(a+b+""); //加和
        System.out.println(""+a+b); //拼接

javaDoc

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8cKYIJz0-1616422177357)(C:\Users\AppData\Roaming\Typora\typora-user-images\image-20210322220632207.png)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值