Math类
关于数学运算的功能都在这个类中,所有的方法都是static修饰的,所以在调用方法的时候Math.sqrt()
Scanner类
能从控制台获得输入的数据,将其读入到内存。
方法没有static修饰,要创建对象,调用方法。
import java.util.Scanner;
public class TestMath {
public static void main(String[] args) {
//在一个类中 调用另一个类 这两个类不在同一个目录中(包),就要导入这个类
Scanner scanner = new Scanner(System.in);
//调用 nextInt()方法时,程序处于阻塞状态
//int i = scanner.nextInt();
//System.out.println(i+1);
//预期获得一个字符串
//String str = scanner.nextLine();
//System.out.println(str+"-");
//预期获得一个double
double d = scanner.nextDouble();
}
}
文件中类的说明
一个文件中可以定义多个类,但是只能有一个类是public修饰,而且这个类的名字和文件名要一致,包括大小写。
在项目开发中,不建议一个文件中写多个类。
流程控制
-
分支语句
-
if - else if - else语句
语法: if (boolean expression){
statement
}[
else if (boolean expression){
statement
} else {
statement
}
]
int age = 20; if(age<2){ System.out.println("婴儿"); }else if(age<=12){ System.out.println("儿童"); }else if(age<=18){ System.out.println("青少年"); }else if(age<=30){ System.out.println("成年"); }else if(age<=50){ System.out.println("中年"); }else { System.out.println("老年"); }
-
switch … case 语句
语法:
switch(变量/值){
case 值:
statement
break;
…
default :
statement
}
switch语句效率高于if ,如果判断条件超出5个,而且都是等值判断,建议使用switch
switch语句注意事项:
- switch比较的类型 int或自动转型为int的类型 ,String类型也可以(JDK7及以上版本)
- 每个case中一定要写break; 否则一旦case比对成功,后面所有的case都成功。
三元运算符
语法: boolean表达式?表达式1:表达式2
-
-
循环语句
当程序中要重复的编写相同或相似的语句,采取循环语句来实现
-
for循环
for(initial expression;boolean expression;step expression){
statement
}
for(int i = 1;i<=10;i++){ System.out.println("Hello World"); }
for循环的执行过程
-
执行int i = 1 ;
-
执行i<=10 ;
- 如果结果是true 则执行循环体的语句。
- 如果结果是false 则结束循环
-
执行i++ ;
-
执行 i<=10;
…
写for循环的注意事项
-
局部变量的使用
int i ; //错误 for(int i = 1;i<=10;i++){ int i ; //错误 System.out.println("Hello World"); } int i ; //正确
-
死循环
for(;;){ System.out.println("Hello World"); }
如何提高循环的效率?
- 尽量减少循环不必要的次数。
- 尽量提高循环体执行的效率。
多层循环
循环的嵌套
-
-
while循环
-
do … while循环
break和continue关键字
break :立刻结束循环 ,如果是在二层循环内执行到了break,结束的是当前的二层循环。
continue: 立刻结束本次循环。
a:for(int i = 0;i<10;i++){ b:for(int j = 0;j<10;j++){ for(int k = 0;k<10;k++){ if(k==4){ //结束所有循环 //break a; //结束第二层循环 //break b; //结束当前循环 //break; } System.out.println(i+","+j+","+k); } } }
-