java基础算法和结构 详解java常用算法
一、分支语句流程控制语句对任何一门编程语言都是非常重要的,Java中基于流程控制程序执行的不同步骤和代码块 。
1、IF条件IF条件语句会根据不同的判断条件执行不同的语句,if后括号内的条件是否成立关键步骤,IF条件的判断结果必然要是true或false 。IF…Else语句则是满足IF条件,就执行相应代码块,否则就执行Elase代码块 。
public class Process01 {public static void main(String[] args) {// 演示:Node01if (compare01(40,30)){System.out.println("40>30:true");} else {System.out.println("40>30:false");}// 演示:Node02if (compare01(10,20) && compare01(20,30)){System.out.println("条件成立");} else {System.out.println("条件不成立");}// 演示:Node03if (compare01(20,10) || compare01(20,30)){System.out.println("条件成立");} else {System.out.println("条件不成立");}// 演示:Node04if(compare02(1,1))if(compare02(2,2))System.out.println("Running...");// 演示:Node05if(compare01(1,2))if(compare01(5,3)){System.out.println("5>3");}}private static boolean compare01 (int num1,int num2){System.out.println("判断:num1="+num1+";num2="+num2);return num1 > num2 ;}private static boolean compare02 (int num1,int num2){System.out.println("判断:num1="+num1+";num2="+num2);return num1 == num2 ;}}节点案例,测试结果描述:
- Node01:如果if条件不成立,则执行else流程或者结束;
- Node02:逻辑且判断,任何条件不成立,则直接结束;
- Node03:逻辑或判断,任何条件成立,则直接进入分支;
- Node04:IF的格式,可以去掉{},后续语句会作为分支;
- Node05:IF语句面试题,不会输出任何内容,第二个语句作为分支;
2、IF-Else-IF条件Else…IF分支语句用于多种情况进行的判断处理,直到分支判断条件成功,执行分支模块代码,如果没有else条件,可以所有分支都不满足,直接结束 。
public class Process02 {public static void main(String[] args) {elseIf(11) ;elseIf(9) ;elseIf(5);}private static void elseIf (Integer num){if (num > 10){System.out.println("num > 10");} else if (num > 7){System.out.println("num > 7");} else if (num > 4){System.out.println("num > 4");} else {System.out.println("num < 4");}}}注意:根据条件逐个判断,直到找到第一个满足的条件,不会再继续往下面的判断执行,分支语句执行完毕就会退出当前的else…if流程 。超过3层的的逻辑判断代码可以使用卫语句、策略模式、状态模式等来实现 。3、Switch条件流程描述:switch语句先获取表达式的值,判断表达式的值与case语句后的常量值是否相同,匹配成功则执行该case后的代码块,直到遇到break语句后终止,如果缺失break打断,则继续匹配下一case常量,直到遇到break为止 。如果条件全不匹配,则执行default后面的语句 。default语句可选,如果不存在default语句,同一个switch语句,case的常量值必须互不相同 。
public class Process03 {public static void main(String[] args) {Scanner scan = new Scanner(System.in);System.out.print("What day is it today:");String value = https://www.yf-zs.com/shuma/scan.next();weekInfo(value);}private static void weekInfo (String value){switch (value) {case"Monday":System.out.println("Monday");break;case "Tuesday":System.out.println("Tuesday");break;case "Wednesday":System.out.println("Wednesday");break;case "Thursday":System.out.println("Thursday");break;case "Friday":System.out.println("Friday");break;case "Saturday":System.out.println("Saturday");break;case "Sunday":System.out.println("Sunday");break;default:System.out.println("Matching failure");break;}}}【java基础算法和结构 详解java常用算法】注意:从JDK1.7之后,switch支持对String字符串的匹配 。二、循环语句循环语句就是在满足特定条件的情况下,反复执行同个操作 。循环语句包括:for循环、while循环、do···while循环 。
1、For循环Java开发中最有用的循环方式,也是诸多算法中的基础控制语句,在常见的很多算法编码实现中,都需要借助for循环方式 。
public class Process04 {public static void main(String[] args) {// Node01int sum = 0;for(int i=1; i<=100; i++) {sum += i;}System.out.println(sum);// Node02String[] nameArr = {"Java","C++","C#"} ;for (String name:nameArr){System.out.println("name="+name);}// Node03// 输出 i = 13int i = 0;for (i++; i++ < 10; i++);System.out.println(++i);// 输出:j=3 6 9int j = 0;for (j++; j++ < 10; j++){System.out.println(++j);}}}节点案例,测试结果描述:
推荐阅读
- 花边的常用材料有哪些
- 养羊成本 养羊需要什么基础条件?
- 美术技法 美术基础理论知识
- 工资算法是什么
- 三基是指哪三基
- 原神武器池多少发保底
- lo裙有哪些基础知识-生活百科知识
- 乳液和面霜的区别
- 地台电视柜怎么做的
- 面霜什么时候用
