疯狂Java之学习笔记(8)-------------运算符和循环结构(流程控制)
【摘要】
疯狂Java之学习笔记(8)-------------运算符和循环结构(流程控制)
这一块的内容比较枯燥,但要耐心看完,在细节中寻找突破
另外,既然讲到了流程控制,即循环判断语句,当然要添加一些吸引你眼球的东西了。
后半部分,我会添加排序和查找的java程序。
运算符和表达式
...
疯狂Java之学习笔记(8)-------------运算符和循环结构(流程控制)
这一块的内容比较枯燥,但要耐心看完,在细节中寻找突破
另外,既然讲到了流程控制,即循环判断语句,当然要添加一些吸引你眼球的东西了。
后半部分,我会添加排序和查找的java程序。
运算符和表达式
1. 运算符
对各种类型的数据进行加工的过程成为运算,表示各种不同运算的符号称为运算符,参与运算的数据称为操作数,按操作数的数目来分,可有:
⑴一元运算符:++,--,+,-
⑵二元运算符:+,-,>
⑶三元运算符:?:
基本的运算符按功能划分,有下面几类:
⑴算术运算符: +,―,*,/,%,++,――。
例如:
3+2; a-b; i++; --i;
⑵关系运算符: >,<,>=,<=,==,!=。
例如:
count>3; I==0; n!=-1;
⑶布尔逻辑运算符: !,&&,|| 。
例如:
flag=true; !(flag); flag&&false;
⑷赋值运算符 =,及其扩展赋值运算符如+=,―=,*=,/=等。
例如:
i=3;
i+=3; //等效于i=i+3;
⑸条件运算符 ? :
例如:result=(sum= =0 ? 1 : num/sum);
⑹其它:
包括分量运算符· ,下标运算符 [],实例运算符instanceof,内存分配运算符new,强制类型转换运算符 (类型),方法调用运算符 () 等。例如:
System.out.println("hello world");
int array1[]=new int[4];
2.表达式
表达式是由操作数和运算符按一定的语法形式组成的符号序列。一个常量或一个变量名字是最简单的表达式,其值即该常量或变量的值;表达式的值还可以用作其他运算的操作数,形成更复杂的表达式。
⑴表达式的类型
表达式的类型由运算以及参与运算的操作数的类型决定,可以是简单类型,也可以是复合类型:
布尔型表达式: x&&y||z;
整型表达式: num1+num2;
⑵运算符的优先次序
表达式的运算按照运算符的优先顺序从高到低进行,同级运算符从左到右进行:
例如,下述条件语句分四步完成:
Result=sum==0?1:num/sum;
第1步:result=sum==0?1:(num/sum)
第2步:result=(sum==0)?1:(num/sum)
第3步:result=((sum==0)?1:(num/sum))
第4步:result=
控制语句
分支语句
分支语句提供了一种控制机制,使得程序的执行可以跳过某些语句不执行,而转去执行特定的语句。
①条件语句 if-else
if(boolean-expression) statement1;
[else statement2;]
②多分支语句 switch
switch (expression){
case value1 : statement1;
break;
case value2 : statement2;
break;
…………
case valueN : statemendN;
break;
[default : defaultStatement; ]
}
◇表达式expression的返回值类型必须是这几种类型之一:int,byte,char,short。
◇ case子句中的值valueN必须是常量,而且所有case子句中的值应是不同的。
◇ default子句是可选的。
◇break语句用来在执行完一个case分支后,使程序跳出switch语句,即终止switch语句的执行(在一些特殊情况下,多个不同的case值要执行一组相同的操作,这时可以不用break)。
循环语句
1.while语句
[initialization]
while (termination){ body; [iteration;] }
2.do-while语句
[initialization]
do { body; [iteration;]
} while (termination);
3.for语句
for (initialization; termination; iteration)
{ body; }
◇ for语句执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。
◇初始化、终止以及迭代部分都可以为空语句(但分号不能省),三者均为空的时候,相当于一个无限循环。
◇在初始化部分和迭代部分可以使用逗号语句,来进行多个操作。逗号语句是用逗号分隔的语句序列。
for( i=0, j=10; i<j; i++, j--)
{ …… }
跳转语句
⑴ break语句
①在switch语中,break语句用来终止switch语句的执行。使程序从switch语句后的第一个语句开始执行。
②在Java中,可以为每个代码块加一个括号,一个代码块通常是用大括号{ }括起来的一段代码。加标号的格式如下:
BlockLabel: { codeBlock }
break语句的第二种使用情况就是跳出它所指定的块,并从紧跟该块的第一条语句处执行。例如:
break BlockLabel;
break语句
a:{…… //标记代码块a
b:{…… //标记代码块b
c:{…… //标记代码块c
break b;
…… //此处的语句块不被执行
}
…… /此处的语句块不被执行
}
…… //从此处开始执行
}
⑵ continue语句
continue语句用来结束本次循环,跳过循环体中下面尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环。对于for语句,在进行终止条件的判断前,还要先执行迭代语句。它的格式为:
continue;
也可以用continue跳转到括号指明的外层循环中,这时的格式为
continue outerLable;
例如:
outer: for( int i=0; i<10; i++ )
{ //外层循环
inner: for( int j=0; j<10; j++ )
{ //内层循环
if( i<j )
{ …… continue outer; }
……
}
……
}
⑶返回语句return
return语句从当前方法中退出,返回到调用该方法的语句处,并从紧跟该语句的下一条语句继续程序的执行。返回语句有两种格式:
return expression ;
return;
return语句通常用在一个方法体的最后,否则会产生编译错误,除非用在if-else语句中
本章习题-----打印九九乘法表
样板代码:
public class ForNestedDemo{
// 完成一个四则运算的功能
public static void main(String args[]){
for(int i=1;i<=9;i++){ // 控制行
for(int j=1;j<=i;j++){ // 控制列
System.out.print(i+"*"+j+"="+(i*j)+"\t") ;
}
System.out.println() ;
}
}
};
文章来源: brucelong.blog.csdn.net,作者:Bruce小鬼,版权归原作者所有,如需转载,请联系作者。
原文链接:brucelong.blog.csdn.net/article/details/79996054
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)