Java代码结构
2024-09-08 18:16:01
Java代码结构
顺序结构
- Java的基本结构为顺序结构,除非特别指明,否则从上到下一句一句执行
选择结构
if单选择结构
if(condition){
doSomething();
}
if双选择结构
if(condition){
doSomething();
}else{ // 如果condition不为true
doAnotherThing();
}
if多选择结构
// 一旦有一个condition为true,执行对应的代码然后结束这次选择
if(condition1){
doThing1();
}else if(condition2){
doThing2();
}else{
doThingN();
}
嵌套的if结构
if(condition1){
if(condition2){ }
}
switch多选择结构
多选择结构还可以用switch case语句
switch case 语句判断一个变量与一系列值中某个值是否相等,每个值为一个分支
switch(x){
case 1:
doThing1();
break;
case 2:
doThing2();
break;
case 3:
doThing3();
break;
default:
doThing4();
}
switch语句中的变量类型可以是:
- byte,short,int,char
- 从Java SE 7开始的,switch支持字符串类型了
- 字符的本质还是数字
- 反编译 java---class(字节码)---反编译(IDEA)
- 同时字符串标签必须为字符串常量或字面量
循环结构
while循环
while(condition){
doSometing();
}
- 每次执行完框内的代码,就会再次检测condition是否为true,为true则再进入框内运行代码
- 大多数情况下不会出现死循环
- 少部分情况需要一直循环,比如服务器请求相应监听
do..while循环
- 对于while语句而言,不满足条件则不能进入循环。但有时我们需要及时不满足条件也至少执行一次循环
- do...while会至少执行一次循环
- while先判断后执行
- do...while先执行后判断
for循环
for循环语句是一种支持迭代的通用结构,是最有效最灵活的循环结构
for循环的循环次数是在执行前就确定的
for(初始化;Boolean;更新){
doSomething();
}
在Java5中引入了一种主要用于数组的增强型for循环
for(声明语句:表达式){
doSomething();
}
- 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句内,值与对应数组中元素的值相等
- 表达式:要访问的数组名,或者是返回值为数组的方法
int[] numbers = {10,20,30,40,50,60};// 定义了一个数组 //遍历数组的元素
for(int x:numbers){
System.out.println(x);
}
break,continue,goto
break在任何循环语句的主体部分,均可被用于强行退出循环(switch语句中也使用)
continue语句用于循环语句中,用于终止某次循环过程,即跳过本次循环中尚未执行的部分,直接进行下一次循环的判定
关于goto关键字
goto关键字很早在程序设计语言中出现。尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而,在break和continue这两个关键字上的身上,我们仍然能够看到goto的影子---带标签的break和continue
“标签"是指后面跟一个冒号的标识符,例如:label:
outer:for(;;){
inner:for(;;){
if(condition){
continue outer;
}
}
}
对Java来说唯一用到标签的地方是在循环语句之前。而在循环语句之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于使用break和continue通常只中断当前循环,但若随同标签使用,他们就会中断到存在标签的地方
最新文章
- python __getitem__, __setitem__ 实现属性的索引式存取
- RecyclerView item 状态错乱
- spring 整合 struts
- motan源码解读:注册中心zookeeper(2)
- GridView九宫图
- IOS视图旋转可放大缩小
- Viewing the Raw SQL Statement(xcode で)
- React源码学习——ReactClass
- RabbitMQ入门-Topic模式
- Tomcat闪退的问题
- Docker(二):Docker镜像使用
- Spring Security 入门(1-8)Spring Security 的配置文件举例
- SSRS分页
- Lumen框架使用Redis与框架Cache压测比较
- 【SQL】 借助游标来实现文本的分列与合并
- Linux设备驱动程序 第三版 读书笔记(一)
- Jquery中的 Deferred分析
- shell生成连续天数日期
- css中选择器
- Android-Java卖票案例-推荐此方式Runnable