Java基础语法

1.注释


// 单行注释

/* 多行注释 */

/**
* 文档注释
*/

2.标识符和关键字

50个关键字(keywards):在语言中有特殊的含义成为语法的一部分。

abstractassertbooleanbreakbyte
casecatchcharclassconst
continuedefaultdodoubleelse
enumextendsfinalfinallyfloat
forgotoifimplementsimport
instanceofintinterfacelongnative
newpackageprivateprotectedpublic
returnstrictfpshortstaticsuper
switchsynchronizedthisthrowthrows
transienttryvoidvolatilewhile

标识符要求

  • 所有的标识符都应该以字母,美元符($),或者下划线(_)开始;首字符之后可以是字母,美元符,下划线或者数字的任意组合

标识符命名规范(驼峰原则)

  • 类名和接口名:每个单词的首字母大写,其余为小写。(大驼峰)

  • 方法名:第二个单词起的首字母为大写,其余全为小写。(小驼峰)

  • 常量名:基本数据类型的常量名全部使用大写字母,字母与字母之间用下划线分隔。

注意:不能使用关键字作为变量名或方法名,标识符是大小写敏感的,可以使用中文命名,但不建议

3.数据类型

  1. JAVA属于强类型语言,要求变量的使用要严格符合规定,所有变量都必须先定义后使用。

  2. 特点:安全性强,速度低

java数据类型分为两类:

基本类型

数值型:

 - 整数类型:
   1. byte:存储空间:1个字节;表示范围:-128 ~ 127
   2. short:存储空间:2个字节;表示范围:-2^15 ~ 2^15-1
   3. int:存储空间:4个字节;表示范围:-2^31 ~ 2^31-1
   4. long:存储空间:8个字节;表示范围:-2^63 ~ 2^63-1;要在数字后面+L

 - 浮点数类型:
   1. float:存储空间:4个字节;表示范围:1.4E-45 ~ 3.4028235E38;要在数字后面+F
   2. double:存储空间:8个字节;表示范围:4.9E-324 ~ 1.7976931348623157E308

字符型:

 char:字符类型占用2个字节

布尔型:

 boolean:布尔类型:只有true和false

 注意:在符合JVM规范的虚拟机中, 

 如果boolean是单独使用:boolean占4个字节。 

 如果boolean是以“boolean数组”的形式使用:boolean占1个字节。
引用类型
  1. class:类

  2. interface:接口

  3. []:数组

字节

概念:位(bit)是计算机内部数据存储的最小单位;字节(byte)是计算机中数据处理的基本单位,用大写B表示。

 > 1B (字节)=8b (位)
 > 1KB (千字节)=1024B
 > 1MB (兆字节)=1024KB
 > 1GB (吉字节 ,又称“千兆”)=1024MB
 > 1TB (万亿字节 ,太字节)=1024GB
 > 1PB(千万亿字节 拍字节)=1024TB
 > 1EB( 百亿亿字节 艾字节)=1024PB
 > 1ZB ( 十万亿亿字节 泽字节)= 1024 EB
 > 1YB ( 一亿亿亿字节 尧字节)= 1024 ZB

拓展

  • 进制
    • 二进制:0b开头
    • 八进制:0开头
    • 十进制:无
    • 十六进制:0x开头
  • 浮点数:float double
  • 特点:有限,离散,存在舍入误差,接近但不等于
  • 结论:最好完全避免使用浮点数进行比较
  • 字符
  • 所有的字符本质还是数字
  • Unicode编码 65536 底层:U0000~UFFFF 例:\u0061
  • 转义字符
    • \t:制表符
    • \n:换行
    • \ddd:1~3位 8进制数所代表的任意字符
    • \xhh:1~2位16进制数所代表的任意字符

4.类型转换

低>--------------------------------------------->高
byte,short,char->int->long->float->double
运算中不同类型的数据先转换为同一类型,然后进行运算
超过数值范围会导致内存溢出
强制类型转换:(类型)变量名 高 --> 低
自动类型转换:自动转换 低 --> 高
操作比较大的数的时候,注意溢出问题;数字之间可以用下划线分割

注意:

  1. 不能对Boolean值进行转换;
  2. 不能把对象转换为不相干的类型;
  3. 高转低,强制类型转换;
  4. 转换的时候可能存在内存溢出或者精度问题

5.变量、常量、作用域

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

变量声明:数据类型(type) 变量名(varName) = 值(value);可以使用逗号隔开来声明多个同类型变量

常量:初始化后不能再改变的值,关键字:final;定义:final 常量名 = 值

作用域

类变量:关键字:static,从属于类

实例变量:在类里,从属于对象

局部变量:在方法里,必须声明和初始化值

6.基本运算符

  • 算术运算符:+,-,*,/,%,++,–
  • 赋值运算符:=
  • 关系运算符:>,<,>=,<=,==,!=,instanceof
  • 逻辑运算符:&&,||,!
  • 位运算符:&,|,^,~,>>,<<,>>>
  • 条件运算符:? :
  • 扩展赋值运算符:+=,-=,*=,/=

7.自增自减运算符

++a:先自增,再赋值;a++:先赋值,再自增;- -a和a- -同理

8.逻辑运算符、位运算符

逻辑运算符

逻辑与:&&

逻辑或:||

逻辑非:!

短路运算:在逻辑与,逻辑或中,若逻辑运算符前面的表达式能得出结果,则不执行逻辑运算符后面的表达式

位运算符

按位与:A&B

按位或:A|B

按位异或:A^B

按位取反:~A

按位左移:<<:等价于*2

按位右移:>>:等价于/2

位运算的特点:效率极高!

9.三元运算符

x ? y : z
如果x==true,结果为y,否则为z

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值