Java流程控制
Created At :
Views 👀 :
输入输出
输出
1 2
| System.out.print("n1ng"); System.out.println("n1ng");
|
占位符
1 2 3 4 5
| %d 整数 %x 十六进制整数 %f 浮点数 %e 科学计数法表示的浮点数 %s 字符串
|
输入
1 2 3 4 5 6 7 8 9 10 11 12
| import java.util.Scanner;
public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Input your name: "); String name = scanner.nextLine(); System.out.print("Input your age: "); int age = scanner.nextInt(); System.out.printf("Hi, %s, you are %d\n", name, age); } }
|
可以看到要实现读取输入,需要先导入Scanner包,然后实例化一个Scanner对象,根据获取内容选择nextLine方法或nextInt方法
if语句
1 2 3 4 5 6 7 8 9
| if (条件) { } else if(条件){ } else{ }
|
switch语句
1 2 3 4 5 6 7 8 9 10 11
| switch(option){ case 1: break; case 2: break; default: break; }
|
Java12之后也支持这样的语法,此时不用写break,因为他只会指向匹配的语句
1 2 3 4 5 6 7 8 9
| switch (fruit) { case "apple" -> System.out.println("Selected apple"); case "pear" -> System.out.println("Selected pear"); case "mango" -> { System.out.println("Selected mango"); System.out.println("Good choice!"); } default -> System.out.println("No fruit selected"); }
|
switch语句常用来赋值,所以可以这样写
1 2 3 4 5 6
| String fruit = "apple"; int opt = switch (fruit) { case "apple" -> 1; case "pear", "mango" -> 2; default -> 0; };
|
yield
当switch返回的值比较复杂时,可以用yield
1 2 3 4 5 6 7 8 9
| String fruit = "orange"; int opt = switch (fruit) { case "apple" -> 1; case "pear", "mango" -> 2; default -> { int code = fruit.hashCode(); yield code; } };
|
判断
对于值类型直接用‘==’或‘!=’即可,但对于引用类型必须用**equals()**方法,如果引用类型变量为null则会报错
for语句
1 2 3 4
| int[] n1ng = { 1, 4, 9, 16, 25 }; for (int i=0; i<n1ng.length; i++) { System.out.println(n1ng[i]); }
|
for each
相比于for语句更加简洁,但不能获取索引,也无法指定遍历的顺序
1 2 3 4
| int[] n1ng = {1, 2, 3, 4, 5}; for(int i : n1ng){ System.out.println(i); }
|
Java提供了一个Arrays.toString()方法,可以快速打印数组
1 2
| int[] n1ng = {1, 2, 3, 4, 5}; System.out.println(Arrays.toString(n1ng));
|
还有Arrays.sort()方法,可以实现排序,需要注意的是此时数组的指向已经发生变化
1 2 3
| int[] n1ng = {1, 2, 3, 4, 5}; Arrays.sort(n1ng); System.out.println(Array.toString(n1ng));
|
break和continue
break用于跳出当前循环,continue则是跳出本次循环,继续下一次的循环
多维数组
1 2 3 4 5
| int[][] n1ng = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } };
|
对于多维数组n1ng,他的每一个元素都指向了一个一维数组
Java提供了打印多维数组的方法Arrays.deepToString()
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 3049155267@qq.com