JAVA基础——基础语法之操作符

本文详细介绍了JAVA的基础操作符,包括打印语句、赋值、算术、关系、逻辑、位、三元和字符串操作符,以及类型转换。特别强调了自增自减操作符的前后缀差异,以及在实际编程中的应用。
摘要由CSDN通过智能技术生成

本章重点说一下JAVA最基础的语法和操作符

2.1.1 打印语句

Java的打印语句:

System.out.println("Hello Java!")
2.1.2 赋值

Java的赋值操作和C、C++相同,使用操作符(=);

🌰举个栗子::

a = 4; //将4赋值给a变量
2.1.3 算术操作符

1、基本的操作符包括加号(+)、减号(-)、除号(/)、乘号(*)以及取模操作符(%)。

注意:整数除法会直接去掉结果的小数位,而不是四舍五入!!

2、Java使用一种简化符号同时进行运算和赋值操作:

🌰举个栗子:要将x加4并将结果赋回给x,可以写作:x+=4。

3、自增(++)和自减(–)

注意:这里分为前缀和后缀!!

  • 前缀递增和前缀递减(如++a或–a),会先执行运算,再生成值

  • 后缀递增和后缀递减(如a++或a–),会先生成值,再执行运算

📒笔者有话说:两者在实际运用中并没有什么太大的区别!!注意在循环中使用哪一个都会得到一样的结果!!但是究其内在,前缀表达式的效率会高于后缀表达式!!例如:你需要一个文件+1,前缀表达式会先+1然后直接传给你;后缀表达式会先复制一个副本,再将副本+1,然后把副本传给你。对比显而易见。

2.1.4 关系操作符

关系操作符:比较两个变量之间的关系,生成一个boolean值(true or false)

操作符含义
>大于
>=大于或等于
<小于
<=小于或等于
==等于
!=不等

=和!=比较的是对象的引用

🌰举个栗子::

Integer n1 = new Integer(10);
Integer n2 = new Integer(10);

System.out.println(n1 == n2);   //答案为false
System.out.println(n1 != n2);   //答案为true

❓那么如果要比较两个对象的实际内容是否相同该如何操作?

答:对!就是equals()方法

2.1.5 逻辑操作符

我们通过一个表格来学习这部分的知识,这部分需要读者结合代码来慢慢理解。

关键字简介具体含义
& &&长路与 短路与相同点:两边都为真时为真;任意一个为假结果为假; 不同点:长路与两侧都会被运算;短路与如果第一个为假则结果为假
| ||长路或 短路或相同点:两边都为假时为假;任意一个为真结果为真; 不同点:长路与两侧都会被运算;短路与如果第一个为真则结果为真
取反真变假;假变真
^异或不同时返回真;相同时返回假
2.1.6 位操作符

这部分在实际运用中并不常见,所以我给出每一个操作符的操作,其他的不再赘述。

注意:可能后面学到计算机组成原理这门课的时候就会有运用到啦!

关键字简介
Integer.to.BinaryString()一个整数的二进制表达
位或
&位与
^异或
~取非
<< >>左移 右移
>>>带符号右移与无符号右移

1、Integer.to.BinaryString()

int i = 5;
String b =(Integer.toBinaryString(i));

答案:b为101

2、| 位或

🌰栗子::5|6?

答:5的二进制为101;6的二进制为110;所以答案为111,转为十进制为7.

3、& 位与

🌰栗子::5&6?

答:5的二进制为101;6的二进制为110;所以答案为100,转为十进制为4.

4、^ 异或

🌰栗子::5^6?

答:5的二进制为101;6的二进制为110;所以答案为011,转为十进制为3.

2.1.7 三元操作符

三元操作符又称为条件操作符;其表达式采取下述格式:

boolean-exp ? value0 :value1(boolean-exp为布尔表达式)

结果:如果表达式为真 返回value0

​ 如果表达式为假 返回value1

🌰举个栗子:

int i = 5;
int j = 6;
int k = i<j ? 99:88;
//相当于
if(i<j){
  k=99;
}else{
  k=88;
}
2.1.8 字符串操作符

这个操作符(+)顾名思义就是用来连接不同的字符串!

记住,如果表达式以一个字符串开头,那么后续所有的操作数都应该是字符串类型。

🌰举个栗子:

System.out.println(a+b+c);
2.1.9 类型转换操作符

要想执行类型转换,需要将希望获得的数据类型放在圆括号里,放在需要转换的值的左边

🌰举个栗子:

int i = 200;
long lng = (long)i ;
long lng2 = (long)200;

从例子中可以看到,既可以对数值进行数值转换,又可以对变量进行数值转换;但是这里可能会引入“多余”的转换!!例如int值到long值的转换编译器是可以自动转换的。(也就是说,低等级的数值向高等级的数值转换时不需要执行操作符)

所以,类型转换可以分为自动类型转换和强制类型转换两种~~下面我们来做个比较

  • 自动类型转换

    转换类型:从低级到高级(byte,short,char—> int —> long—> float —> double )

  • 强制类型转换

    转换类型:从高级到低级

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

快乐的冲浪码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值