日常学习Java打卡-2

Java 基础语法学习

注释学习

注释一种良好的习惯,注释能让自己或者别人轻松的知道自己写的代码有什么功能或者变量什么含义。被注释的代码不会被执行。

单行注释

使用双下划线可以注释单行://

多行注释

开始和结尾使用/* 被注释内容 */

文档注释

JavaDoc注释:/** 被注释内容 */

它用来生成自己的API文档,被注释的内容可以生成一个HTML文档,类似官方的帮助文档。

注释的内容包含的参数有:

  • @author 作者信息

  • @version 版本信息

  • @since JDK版本

  • @param 参数名

  • @return 返回值情况

  • @throws 异常抛出情况

当我的.java文件写了这种注释后,如何生成API文档呢?

使用命令:cmd命令进入dos命令窗口,进入到.java文件所在的目录下;

javadoc +参数 xxx.java

为了使中文不乱码可以加参数:javadoc -encoding UTF-8 -charset UTF-8 xxx.java

 

关键字、标识符

关键字

关键字是事先定义好的有特殊含义的字符串序列,全部由小写字母组成,例如:public、final等。

标识符

标识符是一切可以由程序员自己命名的东西,比如变量名、常量名、类名、接口名、方法名等;

规范:

  • 标识符由数字、字母、美元符号和下划线组成

  • 首字母不能为数字,后面可以任意组合

  • 严格区分大小写,就是App和app是两个变量

  • 不能使用关键字作为标识符

  • 最好见名知义

  • 类名、接口名首字母大写,以后每个单词首字母大写【驼峰命名】

  • 方法名、变量名首字母小写,以后每个单词首字母大写

  • 常量名全部大写字母组成

数据类型

Java语言为强类型语言,所有的变量必须先定义后使用。

基本数据类型

分为数值型和非数值型,整型、浮点型、字符型为数值型,布尔型为非数值型。基本数据类型分4大类,8小类。

整型

根据宽度和范围区分:

类型 宽度 数值范围

byte 一个字节 -128~127

short 两个字节 -2^15 ~ 2^15-1

int 4个字节 -2^31~ 2^31-1

long 8个字节 -2^63 ~ 2^63-1 : long a = 12321L;

默认数据类型是int类型,long类型声明的时候需要在最后加上L/l,由于小写的l像1,所有通常写大写。

浮点型

float 4个字节 : float f = 2.221F;

double 8个字节 :浮点默认数据类型,可以加D,也可以不加。

字符型

char 两个字节

布尔类型

Boolean 只有两个值【true/false】

扩展

  • 整型不同进制的表示

    • 十进制 10 日常的数字都是十进制,默认的进制

    • 二进制 0b9 以0b开头的为二进制

    • 八进制 08 以0开头

    • 十六进制 0x12 以0x开头

  • 最好不要使用两个浮点数类型数值去比较,由于浮点数也由长度范围,当结果值超过长度限制,得到的值就不一定精确,可能为约等于的值,导致两个浮点值可能不相等,转换BigDecimal类型去比较合适。

  • 布尔值:当条件判断语句中,一个值的类型为布尔值时,此时表达式可以不写成flag == true;可以直接写成flag即可;

    if(flag){}

类型转换

基本数据类型先按表示的数字范围排个序,浮点型由于有小数,所以表示的范围更广,排在最后。

byte--> short(char) --> int --> long --> float --> double

两个转换规律:

  1. 数据类型由低到高可自动类型转换:例如,byte a = 22; int b = a + 12;

  2. 数据类型由高到底必须强制类型转换,int a = 10; byte b = (byte)a + 5;

自动类型转换一般都是发生在运算过程中的,当不同的数据类型数字进行运算时,先将所有的数值转换成最大范围的那个数据类型后,再进行运算。若运算的结果值超过了当前的最大数据类型的范围时,比如最大的为int类型,结果值超过了int的最大范围,会出现内存溢出情况,就是值可能不准确,或变成负数,如何解决呢,可以先将一个数值转换成long类型,然后此时最大数据类型为long后,所有的数字都会先转换为long类型后再运算。

变量

  • 变量是赋值后还可以变化的量。

  • 变量的声明,必须声明类型。类型就是确定变量值的范围。

  • 不同类型的变量声明后,不赋值,也会存在一个默认值,数值型的默认值都是0或者0.0;布尔型为false;除了基本数据类型,其他类型的默认值都是null。

常量

常量是赋值后,不能再改变的量;

声明方式:final 常量名 = 值;

常量名为全部大写字母;必须加上final的修饰符,一般固定不变的值设为常量。

运算符

  • 算术运算符:+、-、*、/、%、++、--

    • 其中++说明一下;

    • a++:由于字母在等号后,加号前,所有是先赋值运算,在加1运算

    • ++a:加号在等号后,所以先加1,在赋值

  • 赋值运算符:=

  • 关系运算符:<、>、<=、>=、==、!=、instanceof

  • 逻辑运算符:&&与、||或、!非

  • 位运算:&、|、^、~、>>、<<

    • 转换成8位bit后,上下去比较计算

    • &等同于与,上下同一位置,都为真,则为真,否则为假,真为1,假为0,就是上下都为1则为1,否则为0

    • |或类似

    • <<左移一位*2,因为位的表示中,左边比右边大,且满2进1

    • 右移同左移类似,/2

  • 条件运算(三元运算符):

    • 布尔表达式?为真的值:为假的值

    •  

 

posted @ 2022-10-16 23:57  无畏小白  阅读(9)  评论(0)    收藏  举报