• Java 基础语法


    Java 基础语法

    注释

    //单行注释
    //多行注释
    /*多行注释
    多行注释
    */
    //文档注释
    /**
    *
    * ░░░░░░░░░░░░░░░░░░░░░░░░▄░░
    * ░░░░░░░░░▐█░░░░░░░░░░░▄▀▒▌░
    * ░░░░░░░░▐▀▒█░░░░░░░░▄▀▒▒▒▐
    * ░░░░░░░▐▄▀▒▒▀▀▀▀▄▄▄▀▒▒▒▒▒▐
    * ░░░░░▄▄▀▒░▒▒▒▒▒▒▒▒▒█▒▒▄█▒▐
    * ░░░▄▀▒▒▒░░░▒▒▒░░░▒▒▒▀██▀▒▌
    * ░░▐▒▒▒▄▄▒▒▒▒░░░▒▒▒▒▒▒▒▀▄▒▒
    * ░░▌░░▌█▀▒▒▒▒▒▄▀█▄▒▒▒▒▒▒▒█▒▐
    * ░▐░░░▒▒▒▒▒▒▒▒▌██▀▒▒░░░▒▒▒▀▄
    * ░▌░▒▄██▄▒▒▒▒▒▒▒▒▒░░░░░░▒▒▒▒
    * ▀▒▀▐▄█▄█▌▄░▀▒▒░░░░░░░░░░▒▒▒
    * 就这样看着你们这群单身狗,一句话也不说(doge
    */
    

    其他有趣的注释https://blog.csdn.net/ydk888888/article/details/81563608

    标识符和关键字

    标识符

    定义:Java 中标识符是为方法、变量或其他用户定义项所定义的名称。

    标识符可以有一个或多个字符。在 Java 语言中,标识符的构成规则如下:

    • 标识符由数字(09)和字母(AZ 和 a~z)、美元符号($)、下划线(_)以及 Unicode 字符集中符号大于 0xC0 的所有符号组合构成(各符号之间没有空格)。
    • 标识符的第一个符号为字母、下划线和美元符号,后面可以是任何字母、数字、美元符号或下划线。

    注:Java区分大小写, 标识符不能与关键字重复,尽量别用中文或拼音

    image-20210124155039647

    关键字

    定义:关键字(或者保留字)是对编译器有特殊意义的固定单词,不能在程序中做其他目的使用。关键字具有专门的意义和用途,和自定义的标识符不同,不能当作一般的标识符来使用。

    • 数据类型:boolean、int、long、short、byte、float、double、char、class、interface。
    • 流程控制:if、else、do、while、for、switch、case、default、break、continue、return、try、catch、finally。
    • 修饰符:public、protected、private、final、void、static、strict、abstract、transient、synchronized、volatile、native。
    • 动作:package、import、throw、throws、extends、implements、this、supper、instanceof、new。
    • 保留字:true、false、null、goto、const。

    参考http://c.biancheng.net/view/5613.html

    数据类型

    基本类型

    //八大数据类型
    //整型
    int num1 = 10;
    byte num2 = 2;
    short num3 = 30;
    long num4 = 22L;//Long类型要加L
    //小数,浮点数
    float num5 = 10.1f;//float类型要加f
    double num6 = 3.141592653589793238462643;
    //字符
    char name ='中';//只能是一个字母、数字、字和符号
    //字符串
    String namea = "小王"; //String不是关键字,是一个类
    //布尔值
    boolean flag = true;
    boolean flag1 = false;
    

    引用数据类型

    类型转换

    由高到低:byte,short,char,int,long,float,double

    • 强制转换

      由低到高

    • 自动转换

      由高到低

    1. 不能对布尔值进行转换

    2. 不能把对象类型转换为不相干的类型

    3. 由高到低可能存在内存溢出,或精度问题

    4. JDK7以上数字直接可以用下划线分割。例:

       long money = 10_0000_0000
      

    自动转换

    整数拓展

    进制 二进制0b 八进制0 十进制 十六进制0x

    int i = 0b10;
    int i2 = 10;
    int i3 = 010;
    int i4 = 0x10;
    System.out.println(i);
    System.out.println(i2);
    System.out.println(i3);
    System.out.println(i4);
    

    浮点数拓展

    银行业务如何表示?

    如果使用float和double?

    float f = 0.1f;//0.1
    double d = 1.0/10;//0.1
    System.out.println(f);
    System.out.println(d);
    System.out.println(f==d);//false
    
    float f1 = 1212135456121555f;
    float f2 = f1+1;
    System.out.println(f1==f2);//true
    

    debug结果

    浮点数是有限的,离散的。存在四舍五入误差。尽量不要用浮点数计算钱数

    字符拓展

    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) 范围0 ~ 65536(U0000 ~ UFFFF)

    转义字符

    转义符 意义
    \r 回车
    \n 换行
    \t 水平制表(跳到下一个TAB位置)
    \v 垂直制表
    \\ 反斜线\
    \' 单引号
    \" 双引号

    参考https://blog.csdn.net/weixin_44560940/article/details/95488167

    布尔值拓展

    if (flag==true){}
    if (flag){}//和上面意思一样
    
  • 相关阅读:
    信用评分卡Credit Scorecards (1-7)
    数据可视化 – 银行案例学习实例 (Part 1-6)
    CatBoost算法和GPU测试(python代码实现)
    xgboost调参指南
    Dream team: Stacking for combining classifiers梦之队:组合分类器
    集成学习算法汇总----Boosting和Bagging(推荐AAA)
    算法优点和缺点汇总(推荐AAA)
    (剑指Offer)面试题59:对称的二叉树
    (笔试题)质数因子Prime Factor
    (笔试题)把一个整数数组中重复的数字去掉
  • 原文地址:https://www.cnblogs.com/LZC1402548603/p/14323082.html
Copyright © 2020-2023  润新知