简介
继续第3节内容,我们现在开始讲Java的运算符、表达式和常用语句
二、Java运算符
1、按照运算符的功能可以分为:6
- 算术运算符,如:+、-、*、/、%、++、--
- 关系运算符,如:>=、>、!=
- 逻辑运算符,如:&&、||、!
- 赋值运算符,如:=、+=、-=
- 位运算符,如: &、|、~、^
- Instanceof运算符
2、算术混合运算的精度
-
- 精度从“低”到“高”排列的顺序是:
byte short int long float double - Java按运算符两边的操作元的最高精度保留结果的精度,例如:
5/2的结果是2,要想得到2.5,必须写成5.0/2或5.0f/2。
- 精度从“低”到“高”排列的顺序是:
3、char型数据和整型数据运算结果的精度是int
例如:byte x=7;
那么:‘B’+x; 的结果是int型,因此:
下列写法是不正确的:char ch=’B’+x;
应当写成:char ch=(char)(’B’+x);
4、关系运算符:<、>、<=、>=、==、!=
-
- 用来比较两个值的关系,结果是boolean型,当运算符对应的关系成立时,运算结果是true,否则是false。
- 结合方向:从左到右
- 优先级:
<、>、<=、>= :6级
==、!= :7级
5、逻辑运算符:&&(与)、||(或)、!(非)
-
- 逻辑运算符的操作元必须是boolean型的值或表达式,例如:
- 2>8&&9>2的结果为false
- 2>8||9>2的结果为true。
- 结合方向:&&、||为从左向右;!为从右向左
- 优先级: &&(11级)、||(12级)、!(2级)
- 逻辑运算符的操作元必须是boolean型的值或表达式,例如:
- 逻辑运算符&&和||也称为“短路逻辑运算符”
- 对于表达式op1&&op2,当op1的值为false时,&&运算符不再计算op2的值,例如:
- 假定x值为1,那么:
- 执行 ( ( y=1 ) == 0 ) && ( ( x=6 ) == 6 )后,x值为1
- 执行 ( ( y=1 ) == 1 ) && ( ( x=6 ) == 6 )后,x值为6
- 假定x值为1,那么:
6、赋值运算符:=、+=
-
- 赋值表达式的值就是“=”左面变量的值,注意不要和比较运算符“==”混淆
- 结合方向:从右到左
- 优先级:14级
7、位运算符:&、|、~、^
-
- 对数据进行二进制运算
- “&” :按位与,若a,b两个数据对应位是1,则c的该位是1,否则是0。
- “|”:按位或,若a,b两个数据对应位是0,则c的该位是0,否则是1。
- “~”:按位非,若a对应位是0,则c的该位是1,否则是0。
- “^”:按位异或,若a,b两个数据对应位相同,则c的该位是0,否则是1。
- 结合方向:&、|、^ 从左向右; ~从右向左
- 优先级:&(8级)、 ^(9级)、|(10级)、~(2级)
- 与逻辑运算符不同,对于表达式op1&op2,位运算符要在计算完op1和op2之后再给出运算结果。
例如: x初始值为1,
执行( ( y=1 ) == 0 ) && ( ( x=6 ) == 6 )后,x值是1
执行( ( y=1 ) == 0 ) & ( ( x=6 ) == 6 )后,x值是6
8、instanceof运算符
用法:
boolean isString = x instanceof String
-
- 左面的操作元是一个对象;右面是一个类。
- 当左面的对象是右面的类创建的对象时,该运算符运算的结果是true ,否则是false
- 结合方向:从右向左
- 优先级:2级
9、总结
运算符的优先级决定了表达式中运算执行的先后顺序,但没有必要刻意去记忆运算符号的优先级别,在编写程序时可尽量的使用括号()运算符号来实现想要的运算次序,以免产生难以阅读或含糊不清的计算顺序。
三、Java语句
Java里的语句可分为以下五类:
- 、方法调用语句,如:System.out.println(“Hello”);(常用)
- 、表达式语句 ,如:x=23;
- 、复合语句:用{ }括起的若干行语句
- 、空语句:一个分号也是一条语句
- 、控制语句:分支语句和循环语句(常用)
- 、package 语句和 import语句(难点)
1、Java 语言的分支语句有2种类型:
-
- if条件语句
- switch开关语句
1.1、if 语句
的一般形式:
if ( 表达式 )
{
若干语句
}
- if-else 语句的一般形式:
if ( 表达式 )
{
若干语句
}
else
{
若干语句
}
- if-else if - else 语句的一般形式:
if ( 表达式 ) {
若干语句
}
else if (表达式){
若干语句
}
……
else {
若干语句
}
- if后()内的表达式结果必须是boolean类型;
- { }中可包含一到多条语句,如果只有一个语句,则可以省略{ },但为了增强程序可读性,建议不要省略;
- 有时为了编程需要,{ }内可以没有语句
public class Main {
public static void main(String[] args) {
int math = 60;
if( math >= 60 )
{
System.out.println("数学及格了~~");
}
else
{
System.out.println("数学挂了!");
}
}
}
1.2、switch语句
是多分支的开关语句,一般格式:..l
switch(表达式) {
case 常量值1 :
若干语句
break;
...
case 常量值n :
若干语句
break;
default :
若干语句
}
- switch语句实际相当于多条件的“if … else if …else…”语句;
- switch(表达式)中表达式的值必须是整型或者字符型,case常量值亦是如此;(long除外)
- case常量值必须互不相同;
- 如果表达式的值与某个case后的常量值相同,则执行case中的语句,直到遇到break语句为止;如果case中没有使用break语句,那么会继续执行后继的case中的语句,直到遇到break为止;
- 如果表达式的值与任何case常量值都不相同,则执行default中的语句。
例如:
public class Main {
public static void main(String[] args) {
int math = 60;
System.out.println("math="+math);
switch ( math / 10 ) {
case 9 :
System.out.println("你很完美~~");
case 8 :
System.out.println("你很优秀~~");
break;
case 7 :
System.out.println("你过关了~");
case 6 :
System.out.println("你过关了~");
default :
System.out.println("你挂了!");
break;
}
}
}
执行结果是:
math = 95时:
math = 86时;
math = 71时:
math = 59时:
math = 100时:
2、循环语句
2.1、for循环
-
- 格式:
for(表达式1;表达式2;表达式3)
{
若干语句,称为循环体
} - 表达式1:变量初始化
- 表达式2:boolean型表达式,循环条件
- 表达式3:改变循环条件
- 格式:
- for语句执行过程:
for(表达式1;表达式2;表达式3)
{
若干语句,称为循环体}
例如:
for ( int i = 1; i <= 100 ; i++ )
{
//循环执行100遍
System.out.println(“博主很帅!!!");
}
for ( int i = 1; i <= 100 ; i+=2 )
{
//循环执行50遍
System.out.println("博主很帅!!!");
}
又如:
public class Main {
public static void main(String[] args) {
int a[] = {1,2,3,4,5,6};
for ( int i = 0; i <a.length ; i++ )
{
System.out.println(a[i]);
}
for ( int i : a)
{
System.out.println( i );
}
}
}
以上两个for循环是等价的👇:
2.2while 循环
-
- 格式:
while( 表达式 )
{
若干语句
}
- do-while循环
- 格式:
do
{
若干语句
}
while(表达式);
- while循环和do-while循环的区别
- while循环是先判断,后执行;
- do-while循环是先执行,后判断,即: do-while循环至少执行一次
- break和continue语句多用在循环体中
- break:中断循环,跳出循环体;
- continue:中断本次循环,不再执行continue后的循环体语句,转而进入下一次循环。
例如:
public class Main {
public static void main(String[] args) {
for ( int i = 1; i <= 10 ; i++ )
{
if ( i == 5 )
break;
System.out.println(i);
}
for ( int i = 1; i <= 10 ; i++ )
{
if ( i == 5 )
continue;
System.out.println(i);
}
}
}
3、注释语句
- 单行注释://
// 这是单行注释
- 多行注释:/* */
/*
这是多行注释
*/
- 文档注释:/** */
/**
这是文档注释
*/
- 文档注释通常写为:
/**
* 这是第一行文档注释
* 这是第二行文档注释
*/
- JDK中的javadoc程序可以提取文档注释并生成HTML帮助文档(Java帮助文档就是这样生成的)
- javadoc基本格式:
javadoc -d 文档存放目录 源文件
结束语:
以上是Java入门的第4步,希望大家喜欢
- 本章内容
- Java语言的诞生、特点、简单JAVA程序
- Java语言基本语法,包括:数据类型、数组、运算符和表达式、控制语句
- 复习要求
- 熟练掌握Java语言基本语法
- 读懂课件及教材中的Java程序
- 能够应用Java语言编写较为简单的程序
下一章开始讲类与对象
喜欢的可以点赞+关注哈 ❤❤❤❤❤❤