Java语法基础

注释–Comment

1)注释的定义
注释是对程序代码进行解释说明的文字,是写给程序员看的,编译器编译时会自动忽略注释的内容
2)注释的分类
注释分为单行注释和多行注释,文档注释三种
(1)单行注释
//单行注释的内容
(2)多行注释
/*
第一行注释
第二行注释
第三行注释
/
(3)文档注释
/
*
文档注释的内容
*/
@author 作者
@date 时间
@version 版本
@param 方法的参数
@return 方法的返回类型
3)注释书写的位置
(1)单行注释一般写在语句后面
(2)多行注释一般写在语句的上面,而且不能嵌套使用
(3)文档注释只能写在类,方法,属性定义的上面

包–package

1)包的作用
操作系统中,使用文件夹对文件进行分类存放和管理,不同文件夹可以保存同名的文件
Java中的包的作用类似于文件夹,把类放在包中存储,可以解决类名重复产生的冲突
2)包的定义
【格式】package 包名;
(1)包的命名规范–全部小写,一般是公司域名倒序+项目名+模块名
(2)创建多级包名时,用圆点分隔包名,本质就是创建了多级子目录
(3)完整类名 = 包名 + 类名
简单类名 = 类名
(4)package语句必须在程序中的第一条语句
(5)一个类只能属于一个包,即只能写一个package语句
3)包的导入
当程序需要使用JDK或第三方提供的类时,需要通过导包语句将类导入到程序中
【格式】import 包名.类名;
(1)一个类中可以导入多个类,即可以写多条import语句
(2)表示导入包中的所有类 import 包名.;
(3)JDK提供的java.lang包默认被自动导入
(4)如果在IDEA中设置了自动导包,只要类名在不同的包中唯一的,就可以自动导入
如果在多个包中有相同名字的包,则需要手工选择类所在的包

自定义标识符–Identifier

在程序中为包,变量,常量,类,函数等程序元素定义的名字称为自定义标识符
1)特点
(1)标识符由字母,数字,下划线(_),美元符号($)组成,但不能以数字开头
(2)标识符时严格区分大小写的
(3)关键字和保留字不能用于自定义的标识符
(4)标识符的长度没有限制
2)命名规范
(1)类名和接口名–每个单词的首字母大写,其它字母小写
如:String Runnable BufferedInputStream
(2)变量名和函数名–第一个单词字母全部小写,其它单词首字母大写,其它字母小写
如:beginIndex charAt() replaceAll()
(3)包名–全部字母小写
如:java.lang.com.tyut.java.demo
(4)常量名–全部字母大写,单词与单词之间使用下划线分隔
如:MAX_FILE_SIZE
(5)标识符的命名要做到让人见名知意,尽量使用英文单词,而不是单字母或汉语拼音

Java中的关键字和保留字

1)关键字
关键字是已经定义好的具备特殊含义的系统标识符,一般用于表示数据类型,描述程序执行流程,以及各种访问修饰符
(1)用于定义数据类型的关键字
class interface byte short int long float double char boolean void
(2)用于定义数据类型值的关键字
true false null
(3)用于定义流程控制的关键字
if else switch case default while do for break continue return
(4)用于定义访问权限修饰符的关键字
private protected public
(5)用于定义类,函数,变量修饰符的关键字
abstract final static synchronized
(6)用于定义类与类之间关系的关键字
extends implements
(7)用于定义建立实例及引用实例,判断实例的关键字
new this super instanceof
(8)用于异常处理的关键字
try catch finally throw throws
(9)用于包的关键字
package import
(10)其它修饰符关键字
native strictfp transient volatile assert

2)保留字
const和goto

常量(字面量)–Const

常量是程序运行过程中其值不能发生改变的量

1)常量的分类
(1)整数型常量
(2)小数型常量
(3)布尔型常量 true false
(4)字符型常量 单个字符使用单引号引起来
(5)字符串型常量 单个或多个字符使用双引号引起来
2)特殊的转义字符
\r 回车 Return
\n 换行 New Line
\t 制表符 Table
’ 单引号
" 双引号
\ 斜杠

变量–Variable

变量是指程序运行过程中其值可以发生改变的量

1)变量的三要素–数据类型 变量名 变量值
2)变量的命名规范
变量名由单个单词组成时,全小写
由多个单词组成时,第一个单词的字母全小写,其它单词的首字母大写,其他字母小写

Java中的数据类型

1)基本数据类型–四类八种
(1)整数相关
byte–字节型
字节数:1
长度:8
数据个数:256
数据范围:-128~127
short–短整型
字节数:2
长度:16
数据个数:65536
数据范围:-32768~32767
int–整形
字节数:4
长度:32
数据个数:2的32次方
long–长整型
字节数:8
长度:64
数据个数:2的64次方
(2)小数相关
float–单精度
字节数:4
长度:32
数据个数:2的32次方
double–双精度
字节数:8
长度:64
数据个数:2的64次方
(3)boolean–布尔类型 1个字节,只有两个值:true或false
(4)char–字符类型 2个字节,unicode编码格式
【总结】byte short int long boolean char float double
2)引用数据类型
除了八种基本数据类型以外的类型叫引用数据类型,如字符串,数组,类,接口,枚举等
【注意】字符串的数据类型是String,属于引用数据类型,不属于基本数据类型

变量的使用

1)变量的声明
数据类型 变量名;
数据类型 变量名1,变量名2,…;
2)变量的赋值
变量名 = 变量值;
3)变量的定义/初始化
数据类型 变量名 = 变量值;
数据类型 变量名1 = 变量值1,变量名2 = 变量值2,…;
【注意1】变量的作用域是指变量的可用范围,就是定义变量时所处的一对大括号中
在相同的作用域中,不能重复定义同名的变量
【注意2】变量在使用前必须赋值,不能只声明不初始化
【注意3】一个整数没有加上任何标识符时,默认是int型,对于long型,要在数据后面加上后缀L
一个小数没有加上任何标识符时,默认是double型,对于float型,要在数据后面加上后缀F
【注意4】变量数据类型的选用原则
能满足需求的情况下,为了节省内存空间,尽量使用范围小的数据类型
4)变量作用域分类
作用域就是变量的可用范围,按照作用域划分,变量可分为局部变量和成员变量两种
(1)局部变量–在函数(方法)中定义的变量,作用域是定义变量所在的一对大括号内
函数(方法)的参数也属于局部变量
(2)成员变量–在类中定义的变量,作用域属于整个类的范围

基本数据类型的转换

1)小数据类型–>大数据类型 自动类型转换
byte–>short–>int–>long float–>double char–>int
2)大数据类型–>小数据类型 强制类型转换
【格式】小数据类型 变量名 = (小数据类型)大数据类型的变量;
【注意1】byte,short,char型的数据,运算时都会先自动转换成int型,再参与运算
【注意2】运算表达式中如果出现不同类型的数据,先将这些数据自动转换成最高的类型后再运算,而且最后的结果类型也是最高的结果类型

运算符

算术运算符 + - * / %

1.注意事项
1)当加法表达式中遇到字符时,+表示字符串内容的连接,其结果也是字符串类型
2)区分字符串常量,字符串拼接
System.out.println(“a+b+c”);
System.out.println(a+b+c);
System.out.println(a+“b+c”);
3)两个操作数都是整数时,除法结果是取整操作
4)%表示取模(取余数),结果的正负号是取决于被除数的符号
2.自增操作++和自减操作–
++a:前自增—先加1,再使用
a++:后自增—先使用,再加1
–a:前自减—先减1,再使用
a–:后自减—先使用,再减1

赋值运算符 = += -= *= /=

a+=1;相当于a=a+1;
a-=1;相当于a=a-1;
a*=1;相当于a=a*1;
a/=1;相当于a=a/1;
【优点】编译器会自动进行强制类型转换,无需手工转换

关系比较运算符

1.==和!=
1)对于基本数据类型,==比较两个数据的数据值是否相等
2)对于引用数据类型,==比较两个对象的内存地址是否相同
2.>大于 <小于 >=大于等于 <=小于等于
关系比较运算符的结果是boolean类型,只有true和false两种取值

逻辑运算符 & | ! ^ && ||

逻辑运算符用来连接多个布尔型常量或者关系表达式,其结果还是boolean类型
1.&—与
只有左右两边同时为true,结果才为true,否则为false
2.|—或
只有左右两边同时为false,结果才为false,否则为true
3.!—非
单目运算符,true变false,false变true
4.^—异或
左右两边结果不一致,结果为true,否则为false
5.&&—短路与
如果左边的布尔值表达式为false,为了提高运算效率,不会再运算右边的布尔表达式,直接返回false
6.||—短路或
如果左边的布尔表达式为true,为了提高运算效率,不会再运算右边的布尔表达式,直接返回true
【优先级】! > & > ^ > |

三目运算符 布尔表达式?值1:值2

1)三目运算符相当于if-else双分支的简化形式,如果布尔表达式的值为true,则整个三目运算符的结果值为1,否则为2
2)三目运算符不能单独存在,必须使用表达式的结果(要么变量接收结果,要么直接打印输出)
3)三目运算符可以嵌套使用,相当于if语句的嵌套
a>b?c>d?1:2:3
等价于

if(a>b){
	if(c>d){
	1
}else{
	2
}else{
	3
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值