接上一章
类型转换、进制、运算符

目录

  • 5、if-else语法
    • 5.1 练习题
  • 6、Scanner键盘获取数据
  • 6、获取随机数——Math.random()
  • 7、switch-case语法
  • 8、for循环
  • 9、while循环
  • 10、do...while循环
  • 11、循环练习题
  • 12、嵌套循环
    • 例题一:打印*正方形
    • 例题二:打印*倒三角
    • 例题三:打印*正三角
    • 例题四:打印菱形的右边半个
    • 例题五:打印菱形的上半部分
    • 例题六:打印菱形的下半部分
    • 例题七:打印完整的菱形
    • 例题八:打印九九乘法表
    • 例题九:输出100以内的所有质数
  • 13、特殊关键字的使用:break、continue
    • 13.1、break关键字:
    • 13.2、continue关键字:

5、if-else语法

class StringTest {public static void main(String[] args) {//方法一://输出结果:检查结束int a=80;if(a<60||a>100){System.out.println("血压不正常,进一步检查");}System.out.println("检查结束");}
}
//方法二:
//输出结果:已成年int age1=23;if(age1<18){System.out.println("未成年");}else{System.out.println("已成年");}
//方法三:
//输出结果:青壮年时期int age=23;if(age<0){System.out.println("数据不符合规范");}else if(age<18){System.out.println("青少年时期");}else if(age<35){System.out.println("青壮年时期");}else if(age<60){System.out.println("中年时期");}else{System.out.println("老年时期");}

5.1 练习题

练习题1
class Test {public static void main(String[] args) {//编写程序,声明2个int型变量并赋值。判断两数之和,//如果大于等于50,打印”hello world“int i1=18;int i2=20;if(i1+i2>=50){System.out.println("hello world");}else{System.out.println("两数之和不符合要求");}}
}
练习题2
class Test {public static void main(String[] args) {//编写程序,声明2个double型变量并赋值。判断第一个数大于10.0,//且第2个数小于20.0,打印两数之和。否则,打印两数的乘积。double d1=12.0;double d2=10.0;if(d1>10.0 && d2<20.0){System.out.println("两数之和:"+(d1+d2));//两数之和:22.0}else{System.out.println("两数乘积:"+d1*d2);}}
}
练习题3
import java.util.Scanner;
class Test {public static void main(String[] args) {/*我家的狗5岁了,5岁的狗相当于人类多大呢?其实,狗的前两年每一年相当于人类的10.5岁,之后每增加一年就增加四岁。那么5岁的狗相当于人类多少年龄呢?应该是: 10.5+10.5+4+4+4=33岁。编写一个程序,获取用户输入的狗的年龄,通过程序显示其相当于人类的年龄。如果用户输入负数,请显示一个提示信息*/System.out.println("请输入狗的年龄!");Scanner sc = new Scanner(System.in);int dogAge = sc.nextInt();double Age = 0;int Age1=0;if(dogAge<0){System.out.println("数据不合法");}else if(dogAge>0 && dogAge<=2){Age=dogAge*10.5;Age1=(int)Age;System.out.println("小狗的年龄为:"+dogAge+" 相当于人类:"+ Age1+"岁");}else{Age=(dogAge-2)*4+10.5*2;Age1=(int)Age;//强转一下,去掉double类型小数点System.out.println("小狗的年龄为:"+dogAge+" 相当于人类:"+ Age1+"岁");}}
}

6、Scanner键盘获取数据

class StringTest {public static void main(String[] args) {Scanner scan=new Scanner(System.in);//获取int类型的数据System.out.println("请输入int类型的数据");int num = scan.nextInt();System.out.println(num);//String类型的数据System.out.println("请输入String类型的数据");String name = scan.next();System.out.println(name);}
}
     //double类型double name = scan.nextDouble();//booleanboolean name = scan.nextBoolean();

6、获取随机数——Math.random()

class StringTest {public static void main(String[] args) {//获取一个二位数的随机数//[0.0,1.0) ————>[0.0,90.0)————>[10.0,100.0)double value = Math.random()*90+10;//[10.0,100.0)————>[10,99]int v1=(int)value;System.out.println("产生的随机数:"+v1);}
}

7、switch-case语法

/*
根据switch表达式中的值,依次匹配各个case中的常量。
一旦匹配成功,则进入相应case结构中,调用其执行语句。
当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,
直到遇到break关键字或此switch-case结构末尾结束为止。
break:一旦符合这个要求,就会跳出switch-case结构,其他都不执行。
switch(num){}结构中的num:只能是如下6中数据结构之一:
byte、short、char、
int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)default:相当于if-else结构里面的else
*/
class StringTest {public static void main(String[] args) {int num = 2;switch(num){case 0:System.out.println("zero");break;case 1:System.out.println("one");break;case 2:System.out.println("two");break;case 3:System.out.println("three");break;default:System.out.println("other");}}//结果输出是two
}

8、for循环

语法

/*
For循环结构的使用
一、循环结构的4个要素
1、初始化条件
2、循环条件 ————是boolean类型
3、循环体
4、迭代条件
二、for循环的条件for(1;2;3){4
}执行过程:1——>2——>4——>3   ——>2——>4——>3
*/
class StringTest {public static void main(String[] args) {for(int i=0;i<=5;i++){System.out.println(i);       }//结果:会依次从0输出到5}
}

例题一、

class StringTest {public static void main(String[] args) {//例题:遍历50以内的偶数,得到所有偶数的和、偶数的个数int sum=0;//和int count=0;//数量for(int i=0;i<=50;i++){if(i%2==0){System.out.println("偶数:"+i);sum+=i;count++;}       }System.out.println("50以内的偶数和为:"+sum+" 个数为:"+count);//输出结果:50以内的偶数和为:650 个数为:26}
}

例题二、

/*
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
比如: 12和20的最大公约数是4,最小公倍数是60。
说明: break关 键字 的使用*/
import java.util.Scanner;
class StringTest {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入第一个正整数");int m = sc.nextInt();System.out.println("请输入第二个正整数");int n = sc.nextInt();//获取两个数中的较小值int min = (m<n)? m : n;for(int i=min;i >= 1;i--){if(m%i == 0 && n%i == 0){System.out.println("最大公约数为:" + i);break;}}}/*结果:请输入第一个正整数12请输入第二个正整数20最大公约数为:4*/
}

例题三、

import java.util.Scanner;
class StringTest {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入第一个正整数");int m = sc.nextInt();System.out.println("请输入第二个正整数");int n = sc.nextInt();//获取两个数中的较大值int max = (m>n)? m : n;for(int i=max;i <= m*n;i++){if(i%m == 0 && i%n == 0){System.out.println("最大公倍数为:" + i);break;}}}/*结果:请输入第一个正整数12请输入第二个正整数20最大公倍数为:60*/
}

9、while循环

/*
while循环结构的使用
一、循环结构的4个要素
1、初始化条件
2、循环条件 ————是boolean类型
3、循环体
4、迭代条件while循环的结构
1;
while(2){3;4;
}执行过程:1——2——3——4——2——3——4...——2
说明:
1、写while循环千万不要丢了迭代条件。一旦丢了,就可能导致死循环
2、写程序,要避免出现死循环
3、for循环和while循环是可以相互转换的!
*/
class whiletest1 {public static void main(String[] args) {System.out.println("Hello World!");//遍历100以内的所有偶数int i = 1;while(i<=100){if(i % 2 == 0){System.out.println("偶数:"+i);}i++;}System.out.println(i);//101}
}

10、do…while循环

/*
do——while循环结构的使用
一、循环结构的4个要素
1、初始化条件
2、循环条件 ————是boolean类型
3、循环体
4、迭代条件do——while循环的结构
1;
do{3;4;
}while(2);执行过程:1——3——4——2——3——4——2——3——4——2
说明:
1、do-while循环至少会执行一次循环体!
2、开发中,使用for和while循环更多一些。较少使用do—while
*/
class whiletest1 {public static void main(String[] args) {int num = 1;do{if(num%2==0){System.out.println("偶数:"+num);}num++;}while(num<=100);}
}

11、循环练习题

例题一:
从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,
输入为0时结束程序

import java.util.Scanner;
class whiletest1 {public static void main(String[] args) {int count=0;//正数int num=0;//负数while(true){Scanner sc= new Scanner(System.in);System.out.println("请输入一个整数:");int n = sc.nextInt();if(n>0){//正数count++;}else if(n<0){//负数num++;}else{System.out.println("输出为0结束程序");break;//结束程序}System.out.println("整数为:"+n);}System.out.println("正数个数为:"+count);System.out.println("负数个数为:"+num);}
}

12、嵌套循环

例题一:打印*正方形

输出结果是6*6的正方形

/*
嵌套循环的使用
1、嵌套循环:将一个循环结构A声明在另外一个循环结构B的循环体中,就构成了嵌套循环
2、外层循环:循环结构B内层循环:循环结构A
3、说明
内层循环结构遍历一遍,只相当于外层循环体执行了一次
假设外层循环需要执行m次,内层循环过一遍执行n次。
此时内层循环的循环体一共执行了m*n次
*/
import java.util.Scanner;
class whiletest1 {public static void main(String[] args) {//输出结果是6*6的正方形*for(int j = 1;j<=6;j++){for(int i = 1;i<=6;i++){System.out.print('*');}System.out.println();}}
}

例题二:打印*倒三角

输出倒三角

class whiletest1 {public static void main(String[] args) {//输出结果是倒三角for(int j = 1;j<=6;j++){for(int i = 6;i>=j;i--){System.out.print('*');}System.out.println();}}
}

例题三:打印*正三角

输出正三角

class whiletest2 {public static void main(String[] args) {//输出结果是正三角for(int m = 1;m<=6;m++){for(int n = 1;n<=m;n++){System.out.print('*');}System.out.println();}}
}

例题四:打印菱形的右边半个

输出菱形的右边半个

class whiletest1 {public static void main(String[] args) {//输出结果是倒三角for(int m = 1;m<=6;m++){for(int n = 1;n<=m;n++){System.out.print('*');}System.out.println();}for(int j = 1;j<=5;j++){for(int i = 5;i>=j;i--){System.out.print('*');}System.out.println();}}
}

例题五:打印菱形的上半部分

输出菱形的上半部分

在这里插入代码片class whiletest1 {public static void main(String[] args) {//上半部分for(int i = 0; i < 5;i++){//5层//输出"_"for(int j = 0;j < 4-i;j++){System.out.print(" ");}//输出"* "for(int k = 0;k< i+1;k++){System.out.print("* ");}System.out.println();}}
}

例题六:打印菱形的下半部分

输出菱形的下半部分

for(int i = 0; i < 4;i++){for(int j = 0;j<i+1;j++){System.out.print(" ");}for(int k = 0;k<4-i;k++){System.out.print("* ");}System.out.println();}

例题七:打印完整的菱形

class whiletest1 {public static void main(String[] args) {//上半部分for(int i = 0; i < 5;i++){//5层//输出"_"for(int j = 0;j < 4-i;j++){System.out.print(" ");}//输出"* "for(int k = 0;k< i+1;k++){System.out.print("* ");}System.out.println();}System.out.println("*********************");//下半部分for(int i = 0; i < 4;i++){for(int j = 0;j<i+1;j++){System.out.print(" ");}for(int k = 0;k<4-i;k++){System.out.print("* ");}System.out.println();}}
}

例题八:打印九九乘法表

效果图:

/*打印九九乘法表
1*1=1
2*1=2 2*2=4
9*1=9 9*2=18 ...9*9=81
*/
class test1{public static void main(String[] args){System.out.println("九九乘法表!");for(int i = 1;i<=9;i++){for(int j = 1;j<=i;j++){System.out.print(i+"*"+j+"="+(i*j)+" ");}System.out.println("");}}
}

例题九:输出100以内的所有质数

100以内的所有质数的输出
质数:素数,只能被1和它本身整除的自然数。
从2开始,到这个数-1结束为止,都不能被这个数本身整除
最小的质数是:2

class test1{public static void main(String[] args){System.out.println("100以内的质数!");boolean flag = true;//表示i是否被j除尽,一旦除尽,修改其值for(int i = 2;i <= 100;i++){//遍历100以内的自然数for(int j = 2;j<=i-1;j++){//j:被i去除if(i%j==0){//i能被j除尽 说明不是质数  flag=false;break;}}if(flag == true){System.out.print(i+" ");}flag=true;//置为true,让后面的质数继续去遍历}}
}

13、特殊关键字的使用:break、continue

break 和 continue关键字的使用

                 适用范围                循环中使用的作用break:          switch-case         结束当前循环循环结构中continue:     循环结构中           结束当此循环相同点:   关键字后面不能声明执行语句

13.1、break关键字:

class test1{public static void main(String[] args){System.out.println("break用法");for(int i = 1;i <= 10;i++){if(i % 4 == 0){//直接暂停整个for循环break;//输出结果:1 2 3}System.out.print(i+" ");}}
}

13.2、continue关键字:

class test1{public static void main(String[] args){System.out.println("continue用法");for(int i = 1;i <= 10;i++){if(i % 4 == 0){//只是暂停了4和8这一次的循环continue;//输出结果:1 2 3 5 6 7 9 10}System.out.print(i+" ");}}
}

Java基础——2、基本语法(下)—程序流程控制相关推荐

  1. Java基础【之】循环、流程控制 (if else、whitch case、while、do while、for...i、foreach、多层循环与退出)

    Java基础[之]循环.流程控制 (if else.whitch case.while.do while.for...i.foreach.多层循环与退出) 1.默认顺序执行 2.分支控制 if els ...

  2. 【Java基础】· Java基本语法:程序流程控制习题总结

    写在前面 Hello大家好, 我是[麟-小白],一位软件工程专业的学生,喜好计算机知识.希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正!谢谢大家!!! ...

  3. 一文带你深入理解【Java基础】· Java基本语法:程序流程控制

    写在前面 Hello大家好, 我是[麟-小白],一位软件工程专业的学生,喜好计算机知识.希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正!谢谢大家!!! ...

  4. Java笔记2.3——Java基本语法之程序流程控制

    Java基础 Java基本语法(下):程序流程控制 目录 目录 Java基础 Java基本语法(下):程序流程控制 一.程序流程控制 1.理论 2.分支语句1: if-else结构 2.1.if-el ...

  5. Java入门教程笔记03(程序流程控制)

    目录 顺序结构 (系统默认流程) 分支结构 if(3种格式) switch分支 switch分支注意事项: switch的穿透性 循环结构 for 循环 for循环案例1 for循环案例2 for循环 ...

  6. 第二章:Java_基本语法_4 程序流程控制

    4.1 顺序结构 程序从上到下逐行地执行,中间没有任何判断和跳转. 4.2 分支结构 根据条件,选择性地执行某段代码. 有 if-else 和 switch-case两种分支语句. if-else语句 ...

  7. 4.Java学习笔记第四节——程序流程控制(尚硅谷视频整理)

    文章目录 一.分支语句 1.       if-else 结构 1)如何从键盘获取不同类型的变量 2.      switch-case 结构 二.循环结构 1.      for 循环 一.分支语句 ...

  8. 【Java基础系列】第3章 流程控制

    3.1 分支结构 3.1.1 if else 语句 if( 逻辑表达式1 ){ 代码1 } //逻辑表达式1成立执行代码1,不成立不执行: 直接跳到下面的代码 if( 逻辑表达式2 ){ 代码2 }e ...

  9. Java基本语法-程序流程控制

    程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块. 其流程控制方式采用结构化程序设计中规定的三种基本流程结构,即: 顺序结构.分支结构.循环结 ...

最新文章

  1. 详解synchronized锁的各种用法及注意事项
  2. map/set/object/array对比
  3. 《数据结构与抽象:Java语言描述(原书第4版)》一P.3.2 实现一个接口
  4. Python编程专属骚技巧6
  5. android aar保存图片文件异常_我去!合并AAR时踩坑了!
  6. php使用mysqlnd引发的一些问题处理
  7. (八大方法、逐层深入,有你一定没见过的)使用INSERT语句向表中插入数据
  8. 烧光百亿,敢从宝马挖人!中国后台最硬神车,竟惨到卖厂还债?
  9. Git学习总结(21)——Git 提交规范总结
  10. Zabbix添加网络设备
  11. How to check number of Active connections in SQL server?
  12. 有了世界级的数据中心,你还会担心 “全年无休”吗?
  13. java jettison_java – 使用Jettison进行JSON解析
  14. 统计系统所有进程总共占用多少内存
  15. 揭秘慕思“智商税”:狂砸40亿搞营销,发明专利仅7项
  16. axure侧弹层遮罩_Axure实现遮罩效果
  17. 一个人写公众号能赚多少钱?我的副业之路
  18. win+r常用组合键大全
  19. 电脑重新安装了有线网卡驱动,并且能上网,但网络连接图标有红叉怎么去掉
  20. 如何使用VScode调试JS代码

热门文章

  1. 卸载北信源(无需重装系统)
  2. JVM之垃圾回收算法
  3. 数据结构——栈,队列和数组
  4. C语言专家编程题,一篇特别长的总结(C专家编程)
  5. 天翼云主机安全-centos7自动更新安全补丁-ansible自动部署
  6. puzzle(0415)七巧板、十四巧板
  7. 英语语法自学网站 -------- 英语语法网
  8. SQL server 2008基本语句大全与提升语句
  9. 动画片“喜洋洋与灰太狼”和“麦兜”的营销策略
  10. 吴恩达深度学习课程:神经网络和深度学习[中英文字幕+ppt课件]