顺序结构
同C语言
选择结构
if
用法同C语言
else
用法同C语言
else if
用法同C语言
*equals
判断字符串是否相等
s.equals(字符串)//判断s与字符串是否相等,返回boolean值
switch
注意:case
穿透 -- 程序往下跑直至遇到break
或到底
从Java SE 7
开始:switch
支持字符串String
类型了
package com.Harryking.base; import java.util.Scanner; public class Helloworld { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String s = scanner.nextLine(); //JDK7的新特性,表达式结果可以是字符串!! //字符的本质还是数字 -- String.hashCode() switch (s) { case "Harryking": System.out.println("Harryking"); break; case "Gragon": System.out.println("Dragon"); break; default: System.out.println("What's Fuck"); } scanner.close(); } }
用法同C语言
反编译
Java
-> class
(字节码文件) -> 反编译
IDEA可用
步骤:
-
打开项目结构,copy
class
文件相关路径 -
在我的电脑中贴入路径,找到相应文件
-
直接在IDEA中复制不可取,找到相应项目文件夹复制入
-
在IDEA文件管理中双击打开
循环结构
while
用法同C语言
伪代码
package com.Harryking.base; import java.util.Scanner; public class Helloworld { public static void main(String[] args) { //死循环 //除非硬件损坏不会停止,非必要尽量避免 while (true) { //用途 //等待客户端连接 //定时检查 //服务器相应监听 // ... } } }
do...while
用法同C语言
for
IDEA快捷键
for (int i = 0; i < 100; i ++){ } // 100.for自动生成
用法同C语言
//死循环写法 for ( ; ; ) { }
英语教学 -- 奇数和oddSum
偶数和evenSum
增强for循环
Java5
引入了一种主要用于数组或集合的增强型for
循环
for(声明语句 : 表达式) { //代码语句 }
声明语句:声明新的局部变量。该变量的类型必须和数组元素的类型匹配,其作用域限定在循环语句块,其值与此时的数组元素的值相等
表达式:表达式是要访问的数组名,或者是返回值为数组的方法
package com.Harryking.base; public class Helloworld { public static void main(String[] args) { //遍历数组的元素 int[] numbers = {10, 20, 30, 40, 50}; for (int i = 0; i < 5; i++) { System.out.println(numbers[i]); } System.out.println("=============="); for (int x : numbers) { System.out.println(x); } } }
break
用法同C语言
continue
用法同C语言
goto
goto
关键字很早就在程序设计语言中出现
尽管goto
仍是Java
的一个保留字,但并未在语言中得到正式使用:Java
中没有goto
然而,在break
和continue
这两个关键字的身上,我们仍然能看出一些goto
的影子 --- 带标签的break
和continue
"标签"是后面跟一个冒号的标识符,例如:label:
对Java
来说唯一用到标签的地方是在循环语句之前
在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break
和continue
关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方
package com.Harryking.base; public class Helloworld { public static void main(String[] args) { //打印 101 - 150 之间所有的质数 //不建议使用!!! outer:for (int i = 101; i <= 150; i ++) { for (int j = 2; j < i / 2; j ++) { if (i % j == 0) { continue outer; } } System.out.println(i); } } }