int a=布尔表达式?1:2; //表达式值为false 则a=2;表达式为true,a=1;
String name=布尔表达式?"张三":"李四";// 表达式值为false,则name=“李四”;表达式值为
true,则name=“张三”。
// 规则 在使用三目运算符做赋值运算时,若表达式值为true,则赋值内容为问号之后,冒号之前的数据。若表达式值为false,则赋值内容为冒号后的值。
Scanner sc = new Scanner(System.in);
System.out.println("请输入您的年龄");
int age = sc.nextInt();
System.out.println(age>=18?"成年":"未成年");
条件结构
Java程序流程控制结构
顺序
条件
循环
执行流程图如下所示:
- 单分支if结构
当程序执行到分支判断的语句时,首先判断条件,然后根据条件表达式的结果选择相应的语句执行。
if(条件) {
//语句
}
1.条件表达式的值必须为boolean类型
2.条件为true时执行if内的代码
int a=0;
if(a>1){ //不会执行,因为a的值<1,故表达式值为false,无法进入if分支
a++;
}
- 双重分支结构 if-else
条件的结果为true,则执行if中的代码块1,条件的结果为false,则执行else中的代码块2。
if ( 条件 ) {
//代码块1
}else {
//代码块2
}
int num1=1,num2=3;
if(num1 >= num2) {
max = num1;
} else {
max = num2; //执行代码块2 因为num1值不大于也不等于num2值
}
- 多重分支结构 if-else if-else
多重if中条件表达式的顺序是有序的,要么从大到小,要么从小到大,总之是要有顺序地排列。条件不按顺序排列会出错。
if ( 成绩>=80) {
//代码块1
}
else if (成绩>=60) {
//代码块2
}
else {
//代码块3
}
多重分支结构,只要进入一个分支结构,则不会再进入其他分支结构
else if 可以有多个,但是要求分支结构中条件表达式的顺序要有序
if(score >= 90) { //考试成绩>=90
System.out.println("优秀");
} else if (score >= 80) { // 90 >考试成绩>=80
System.out.println("良好");
} else if (score >= 60) { // 80>考试成绩>=60
System.out.println("中等");
} else { //考试成绩<60
System.out.println("差");
}
- 嵌套条件结构
外层条件满足后才执行内层条件语句
if(条件表达式1){
if(条件表达式2){
语句块1;
} else {
语句块2;
}
} else {
if(条件表达式3) {
语句块3;
} else {
语句块4;
}
}
if(gender == ' 男 ') {
if(age>=18) {
System.out.println(" 可以报 A 类比赛项目 ");
}
else {
System.out.println(" 可以报 B 类比赛项目 ");
}
}
else {
System.out.println(" 可以报 C 类比赛项目 ");
}
嵌套条件结构,在使用时,一定要注意代码缩进和代码所处的分支结构。
- switch-case选择结构
通过表达式值与case 后的常量进行比较,如果相等则执行对应的case语句块,如果不相等,则往下继续匹配。如果所有的case找完,都没有相等的,则执行default默认的语句块。
switch (表达式) {
case 常量 1:
语句;
break;
case 常量 2:
语句;
break;
… //case 语句块可以有多个
default:
语句;
break;
}
break关键字 用来结束switch分支机构
int no = 2; //成绩名次
switch(no) {
case 1:
System.out.println("奖励联想笔记本一台");
break;
case 2:
System.out.println("奖励移动硬盘一个");
break;
case 3:
System.out.println("奖励U盘一个");
break;
default:
System.out.println("没有任何奖励");
循环结构
- while循环
循环条件为布尔类型的表达式,值为true时,执行while语句块内的代码。为false则不执行,跳过while循环。
while(循环条件)
{
循环操作;
}
int count = 1; //循环计数器初始为1
while(count<=36) {//循环终止条件为达到36
System.out.println("复印第"+count+"份试卷"); //循环内容
count++;//改变循环条件,已复印试卷加1 //计数器累加
}
- do-while循环
相对于while循环,do-while循环将语句块放在了do的后面,即先执行一边循环语句块的内容之后再去做循环条件判断,如果值为true则继续执行do后的语句块,如果为false,则跳出循环。
do-while循环的语句块至少执行一次。
do
{
循环操作;
}while(循环条件);
int score;
Scanner input = new Scanner(System.in);
do {
System.out.println("学生参加考试!");
System.out.print("老师请输入学生考试成绩:");
score = input.nextInt();
} while(score<60);
System.out.println("恭喜你,考试成绩合格!");
- for循环
for(初始化循环变量表达式;条件判断表达式;更改循环变量表达式){
循环操作的内容
}
Kafka进阶篇知识点
Kafka高级篇知识点
44个Kafka知识点(基础+进阶+高级)解析如下
由于篇幅有限,小编已将上面介绍的**《Kafka源码解析与实战》、Kafka面试专题解析、复习学习必备44个Kafka知识点(基础+进阶+高级)都整理成册,全部都是PDF文档**
变量表达式;条件判断表达式;更改循环变量表达式){
循环操作的内容
}
>
## Kafka进阶篇知识点
[外链图片转存中...(img-Ft5dzPE3-1714501981693)]
**Kafka**高级篇知识点
[外链图片转存中...(img-gwdUeXB0-1714501981693)]
**44个Kafka知识点(基础+进阶+高级)解析如下**
[外链图片转存中...(img-jtzBghXS-1714501981694)]
由于篇幅有限,小编已将上面介绍的**《Kafka源码解析与实战》、Kafka面试专题解析、复习学习必备44个Kafka知识点(基础+进阶+高级)都整理成册,全部都是PDF文档**
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/topics/618154847)收录**