初来乍到,承蒙关照
啦啦啦啦啦~~~~~~

我在B站上大学😄

学习至:狂神说Java

1. 注释

//单行注释

//**
多行注释
*/

2. 标识符

Java语言中,对于变量,常量,函数,语句块的名字,我们统统称之为Java标识符。标识符是用来给 类、对象、方法、变量、接口和自定义数据类型命名的。

  1. 必须以字母、$ 或者_ 开头(汉字也可以但不建议)

    int 1a; //×
    int $a; // √
    int _skf; // √
    int 数字a; // √
  2. 首字符后可以是字母、$、_ 或数字的任意组合(同样可以是汉字)

  3. 标识符严格区分大小写(?)

    string // C#
    String // Java
  4. 不能以关键字作为标识符

  5. 可以使用汉字和拼音,但是不建议这样使用

3. 数据类型

整数类型

  • byte:1字节,表示范围-128~127

  • short:2字节,表示范围-32768~32767 (正负三万左右)

  • int:4字节,表示范围-2147483648~2147483647(正负21亿左右)

  • long:8字节,表示范围-9223372036854775808~9223372036854775808(很大),需要在数值后加 上L来表示使用了long类型,例如646889715125468L

long a = 1L;

进制前缀:

  • 二进制: 0b

  • 八进制: 0

  • 十进制: 无

  • 十六进制: 0x

浮点类型

  • float:4字节,数值后需要加上F,例如86.146F

  • double:8字节

拓展: float是离散的,近似的,精度为6-7位,避免直接使用float类型变量进行比较!!!!!

字符类型

  • char:2字节

注意:字符串String不是关键字,是类 3.1.2

Boolean类型

占用根据条件而变,只有true和false

4. 类型转换

高转低时,需强制转换:(类型)变量名

float f1 = 3.5f;
int i1 = (int)f1; //结果i1=3,精度丢失
int a = 128;
byte b = (byte)a; //结果a=128,b=-128,内存溢出

低转高时,会自动转换,不需要操作

int a =8
double b = a;

注意:

  1. 不能对布尔类型进行转换;

  2. 不能把数据类型转换为不相干的类型;

  3. 转换的时候可能存在内存溢出和精度问题;

小技巧:

数字之间可以用下划线分割,不影响数据大小,方便阅读。

int money = 100000000;
int money = 1_0000_0000;

5. 转义字符

常用转义字符

转义字符意义ASCLL码值(十进制)
\a 响铃(BEL) 007
\b 退格(BS) ,将当前位置移到前一列 008
\f 换页(FF),将当前位置移到下页开头 012
\n 换行(LF) ,将当前位置移到下一行开头 010
\r 回车(CR) ,将当前位置移到本行开头 013
\t 水平制表(HT) (跳到下一个TAB位置) 009
\v 垂直制表(VT) 011
' 代表一个单引号 039
" 代表一个双引号字符 034
\ 代表一个反斜线字符''' 092
? 代表一个问号 063
\0 空字符(NUL) 000
\ddd 1到3位八进制数所代表的任意字符 三位八进制
\xhh 十六进制所代表的任意字符 十六进制

6. 变量

java是强类型语言,每个变量都需要声明类型;

java是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域;

局部变量:定义在方法里,只在方法内可用

实例变量:定义在方法的外边,类的里边。从属于对象,可不初始化,默认值为 数值型(0,0.0,...) ,布尔型 false, 其余均为null

类变量:定义在方法的外边,类的里边,前边需加关键字 static 。从属于类,与类共存亡

7. 常量

关键词 final

常量名 一般全大写,赋值后无法修改

8. 命名规范

见名知意

类成员变量、局部变量、方法名:首字母小写和驼峰原则(第一个词首字母小写,后续词首字母大写)eg : monthSalary

类名:首字母大写和驼峰原则(所有词首字母均大写)eg : Hello、HelloWorld

常量:大写字母和下划线 eg : MIN_SALARY

9. 运算符

  • 算术运算符:

    • 二元运算符: +、- 、*、/、%(取余数,也叫模运算)

    • 一元运算符: ++(自增)、--(自减)

    注: b=a++ 先赋值,再自增

    b=++a 先自增,再赋值 (--同理)

  • 赋值运算符:=

  • 关系运算符:> 、< 、>=、<=、==、!= ( MySQL 中等价于<> )、instanceof

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

  • 位运算符:&、|、^、~、>>(右移)、<<(左移)、>>>

    eg: A=0011 1100

    B=0000 1101

    A&B = 0000 1100 (与: 同为1才为1,否则为0)

    A|B = 0011 1101 (或: 同为0才为0,否则为1)

    A^B = 0011 0001 (异或: 相同为0,否则为1)

    ~B = 1111 0010 (取反)

    << 相当于 *2 ; >> 相当于/2, 如计算2^3 可直接输出 System.out.println(2<<3),效率极高

     

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

    x ? y : z 若x为真,返回y,否则返回z

  • 扩展赋值运算符(双目运算符: +=、-=、*=、/=

    eg: a+=b :a=a+b

    a-=b: a=a-b

    优先级由高到低: () 算术运算符(一元 二元) 关系运算符 逻辑运算符 赋值运算符

10. 包机制

语法格式:

package pkg1[.pkg2[.pkg3...]];

一般利用域名倒置作为包名;

导入包:

import package pkg1[.pkg2[.pkg3...]] 

import package pkg1.* //*是通配符,表示导入pkg1路径下所有的类

11. Java Doc

javadoc命令用于生成自己API文档。

注释加在一些代码块上面,如类、方法等。

@authhor //作者名
@version //版本号
@since //指明需要最早使用的JDK版本
@param //参数名
@return //返回值情况
@throws //异常抛出情况

 

其他

idea中 Ctrl + D 复制当前行至下一行

整数值运算时,有long,结果为long, 没有long,结果为int

小数运算时,有double,结果为double

工具类函数:Math.pow(3,2),用于计算3的二次方

字符串链接: 用+ , 字符串先出现,后续也识别为字符串, 运算在前则先运算才识别成字符串,eg:

int a=10;

int b=20;

System.out.println(""+a+b);

System.out.println(a+b+"");

输出为1020

    30
posted on 2023-07-11 21:23  绿萝佛裳  阅读(8)  评论(0编辑  收藏  举报