Java day08
顺序结构:
1.JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。
2.顺序结构是最简单的算法结构。
3.语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。
public class ShunXuDemo01 { public static void main(String[] args) { System.out.println("hello1"); System.out.println("hello2"); System.out.println("hello3"); System.out.println("hello4"); System.out.println("hello5"); } } /* hello1 hello2 hello3 hello4 hello5 */
选择结构:
if单选择结构:(用一个if)
我们很多时候需要判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示。
语法:
if(布尔表达式){ //如果布尔表达式为true将执行的语句 }
if(布尔表达式)——true——{语句}——往后走
——false——————不执行{语句}往后走
public class IfDemo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入内容: "); String i = scanner.nextLine(); //equals:判断字符串是否相等,这里不能用== if (i.equals("Hello")){ System.out.println(i); } System.out.println("End"); scanner.close(); } } /* 请输入内容: Hello Hello End */
if双选择结构:(用if + else)
举个例子现在有个需求,公司要收购一个软件,成功了给人支付100万,失败了自己找人开发。这样的需求用一个if搞不定了,需要有两个判断,需要用到一个双选择结构,所以就有了
if-else结构。
语法:
if(布尔表达式){ //如果布尔表达式的值为true }else{ //如果布尔表达式的值为false }
public class IfDemo02 { public static void main(String[] args) { //考试分数大于60就是及格,小于60就不及格。 Scanner scanner = new Scanner(System.in); System.out.println("请输入考试分数: "); int v = scanner.nextInt(); if (v > 60) { System.out.println("及格"); }else{ System.out.println("不及格"); } scanner.close(); } } /* 请输入考试分数: 60 不及格 */
if多选择结构:
我们发现上一个代码不符合实际情况,真实的情况还可能存在ABCD,存在区间多级判断。比如90-100就是A,80-90就是B..等等,在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!
语法:
if(布尔表达式1){ //如果布尔表达式1的值为true执行代码 }else if(布尔表达式2){ //如果布尔表达式2的值为true执行代码 }else if(布尔表达式3){ //如果布尔表达式3的值为true执行代码 }else{ //如果以上布尔表达式都不为true,执行代码 }
public class IfDemo03 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入考试分数: "); int score = scanner.nextInt(); if (score==100) { System.out.println("恭喜满分!"); }else if (score<100 && score>=90){ System.out.println("A级"); }else if (score<90 && score>=80){ System.out.println("B级"); }else if (score<80 && score>=70){ System.out.println("C级"); }else if (score<70 && score>=60){ System.out.println("D级"); }else if (score<60 && score>=0){ System.out.println("不及格!"); }else{ System.out.println("成绩无效"); } scanner.close(); } } /* 请输入考试分数: 100 恭喜满分! */
嵌套的if结构:
使用嵌套的 if...else 语句是合法。也就是说你可以在另一个if或者 else if 语句中使用 if 或者 else if 语句。你可以像 if 语句一样嵌套 else if...else。
语法:
if(布尔表达式1){ //如果布尔表达式1的值为true执行代码 if(布尔表达式2){ //如果布尔表达式2的值为true执行代码 } }
思考?我们需要寻找一个数,在1-100之间。
二分法(暂时看不是很懂)
//针对已经排序好的数组进行查找(对上面代码进行的改进) publicstaticbooleanbinarySearch(int[]array,inttarget){ intleft=0; intright=array.length-1; intmid=(left+right)/2; while(array[mid]!=target&&right>left){ if(array[mid]>target){ right=mid-1; } elseif(array[mid]<target){ left=mid+1; } mid=(left+right)/2; //判断在缩小范围后,新的left或者right是否会将target排除 if(array[right]<target){ break;//若缩小后right比target小,即target不在数组中 } elseif(array[left]>target){ break;//若缩小后left比target大,即target不在数组中 } } return(array[mid]==target); }
今天是if结构,如果。。。否则。。。
还是很简单的,明天学习switch和while结构
while结构以前接触比较多,switch的话没怎么学过。

浙公网安备 33010602011771号