· 数字不能开头,不能是关键字,可以包含关键字
· 区分大小写
· 长度无限制
· 标识符不能包含空格
2、约定俗成
· 见名知意
· 包名:字母全部小写
· 类名:首字母大写,多单词组成时,所有单词首字母大写 XxxYyyZyy (为了区分类名和变量名)
· 变量名和方法名:首字母小写 多单词组成时,首字母小写,其余首字母大写 xxxYyyZzz
· 常量:全部大写 多单词组成时,单词之间用 “_” 链接
四、变量
变量是通过使用变量名来访问这片区域的
说到变量就不得不提一下java中的数据类型了,它与c语言中的数据类型有些许不同
java基本数据类型
1、数值型
给数值型赋值时,0b开头的数为二进制、0x开头的数为十六进制、0开头的数为八进制
①整数类型
byte(1个字节:-127—127)
short(2个字节:-32767—32767)
int(4个字节)
long(8个字节,在给long类型赋值时要在其数字最后+小写L)
②浮点类型
float(单精度,只能表示8位有效数字)
double(双精度,精度是float的两倍)
java中浮点数字面量默认是double类型,声明float类型时,在字面后加’f‘或‘F’
2、字符型
char
java中char类型,只能表示一个字符。(java中用String表示字符串,但其实String是一个类不是基本数据类型,其底层存储与c语言一致,都是采用数组存储多个字符)
计算机底层只认识二进制,不认识字符,所以每个字符在底层的编码表中有一个对应的参数编号。
编码表:
ASCII 包含英文字母 其他符号
Unicode 后来国际上发明了一种编码,可以包含全球任何国家的语言符号,兼容了ASCII码的那一部分
java中采用的是Unicode编码表
3、布尔型
boolean (其值只能为“true” or “false”,适用于逻辑运算,一般用于程序流程控制)
注意,java中不能用0/!0/1/!1去表示真/假
基本数据类型的转换
在java程序中,不同的基本数据类型(只有7种,不包含boolean类型)变量的值在转换时分为默认转换和强制转换
1、默认转换
规则:小容量类型转换为大容量类型,可以自动的进行转换(4个字节的float类型大于8个字节的long类型。原因是小数和整数在底层的二进制存储计算方式不同)
2、隐式类型转换
在被赋值类型的数值范围内也可以实现默认转换,如short a=2; byte b=5;)
规则:大容量类型转换为小容量类型(可能出现的问题:1、数据溢出 2、精度下降)
方法:在给予赋值的变量前加上所需要赋值的变量的类型,如int x=258;byte y=(byte)x;
3、强制转换
五、运算符
1、算术运算符
+:1.加法运算(数值+数值) 2.连接(数值+字符串 字符串+字符串) 3.正号
-:1.减法运算 2.负号
*:乘
/:除
%:余
++:自增 1(++在后,先运算 后自增 ++在前,先自增 后运算)
–:自减 1(–在后,先运算 后自减 --在前,先自减 后运算)
2、比较运算符
==、!=:用于数值与数值之间的比较,还可以用于布尔型和布尔型,还可以用于引用类型和引用类型
、<、>=、<=:只能比较数值与数值(char)大小
3、逻辑运算符
&:逻辑与(左边结果无论为啥,右边都要参与运算)
&&:逻辑与(短路与)(当左边结果为真,才会使右边参与运算)
|:逻辑或(左右两边有一个为true,结果为true,但两边都会参与运算)
||:逻辑或(短路或)(当左边为true时,右边不会参与运算)
!:逻辑非 取反
^:逻辑异或 相同为假,不同为真
4、赋值运算符
=:在赋值时,注意左右两边的数据类型要一致。不同时,要遵循数据类型转换规则
+=(会自动执行隐式类型转换):a+=5; ==> a=a+5;(诸如此类的还有-=,*=,/=,%=等)
5、条件运算符
结果 = (条件表达式)?表达式1 : 表达式2
6、位运算符
位----二进制bit位
<<:左移 左移一位相当于乘2
:右移 右移一位相当于除2 带符号的位移(正数补0,负数补1)
:无符号右移 右移一位相当于除2 不带符号的位移 高位移动后,默认补0
& 与 | 或 ^ 异或 ~ 非
&、|、^:可以进行逻辑运算(左右两边为逻辑值),也可以进行位运算(左右两边为数值)
六、基础语句
java中的基础语句与c语言中的基本一致
1、条件语句
if语句
if(条件表达式,最终返回的是一个布尔值)
{
}
if(条件表达式,最终返回的是一个布尔值)
{
}
else
{
}
if(条件表达式,最终返回的是一个布尔值)
{
}
else if(条件表达式,最终返回的是一个布尔值)
{
}
if(条件表达式,最终返回的是一个布尔值)
{
}
else if(条件表达式,最终返回的是一个布尔值)
{
}
else
{
}
switch语句
switch(表达式)
{
case value1 :
代码块1;
break;
case value2 :
代码块2;
break;
case value3 :
代码块3;
break;
case value4 :
代码块4;
break;
default :
默认代码块;
}
表达式的值可以是byte、short、int、char、枚举类型、String类型
case语句后面只能使用常量(字面量)表达式
case后的值不能重复
某个case分支如果没有提供break语句,则继续执行下一个case后的语句:(case的穿透性)
凡是switch可以实现的功能,if语句都可以实现,反之则不一定
若switch和if两个语句都可以进行代码实现,建议使用switch语句,switch效率较高
2、循环语句
while语句
先判断后执行
while(条件表达式)
{
循环体
}
do语句
先执行后判断
do
{
循环体
}
while(条件表达式);
for语句
for(表达式1 ; 条件表达式 ; 表达式2)
{
循环体
}
for语句的语法规定,括号里面一定要有两个分号,分开三个句子。
表达式1是初始化用的,如果没有初始化的必要,就视为空语句,加上分号;
条件表达式作为判断条件,如果没有判断条件,也视为空语句,后加一个分号。这种情况,会无限循环,相当于while(1)。如果for的执行部分,就是{}之间有break语句,可以退出;
表达式2是执行部分执行完毕再执行的语句;无则视为空语句;此时不用再加分号。
如果三者都为空,那么表示没有初始化,没有判断条件,不执行语句。由没有判断条件,故为死循环,相当于while(true)
break
break语句用于终止某个语句块的执行。用在循环语句中,可以强行退出循环。
continue
continue语句用在循环语句中,用于终止某次循环过程,跳过循环体中continue语句下面未执行的循环,执行下一次的循环过程。
循环嵌套
在内层循环中想结束外层循环,则需要使用标签
out:for( ; ; )
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
![img](https://img-blog.csdnimg.cn/img_convert/789151b3916b9a5f8c413352e7127d6a.png)
![img](https://img-blog.csdnimg.cn/img_convert/a225495772a943287eae394454e41ae1.png)
![img](https://img-blog.csdnimg.cn/img_convert/25525702e8a321364561283aede2f608.png)
![img](https://img-blog.csdnimg.cn/img_convert/bde0ea9efdfd2a8f90516d324d323e5b.png)
![img](https://img-blog.csdnimg.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)
![img](https://img-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**
log.csdnimg.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)
![img](https://img-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**
![](https://img-blog.csdnimg.cn/img_convert/cbe58431a268a9c30fa638429a441d66.jpeg)