【JAVA】学习笔记②:基础语法

本文详细介绍了Java编程中的变量命名规则、基本数据类型(包括数值型、字符型和布尔型)、数据类型转换、算术、逻辑、赋值和位运算符,以及条件语句、循环语句等基础结构。还强调了Java编程中的命名习惯和类型转换规则。
摘要由CSDN通过智能技术生成

· 数字不能开头,不能是关键字,可以包含关键字
· 区分大小写
· 长度无限制
· 标识符不能包含空格

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)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值