目录
转义字符
\字符
作用
将特殊字符普通化 或者 将普通字符特殊化
\t 作用为生成一段制表符距离 \n 作用为换行
使用
必须写进字符串
//输出一个“ System.out.println(" \" ");//将特殊字符普通化 //t n System.out.println("aaa\tbbbccc\nddd");//将普通字符特殊化
扫描器
-
作用为接受控制台中用户输入的数据
使用
创建扫描器
Scanner 扫描器名=new Scanner(System.in);
Scanner属于java.util包
java.util.Scanner sc = new java.util.Scanner(System.in);利用输出语句给用户提示(非必要)
接受用户输入
String: sc.next() int: sc.nextInt() double: sc.nextDouble() ... char: sc.next().charAt(0)java.util.Scanner sc = new java.util.Scanner(System.in); //给用户提示 System.out.println("请输入你的姓名:"); //接受用户输入 String name = sc.next(); System.out.println("请输入你的年龄:"); int age = sc.nextInt(); System.out.println("请输入你的性别:"); char sex = sc.next().charAt(0); //查看 System.out.println("姓名:"+name+",年龄:"+age+",性别:"+sex);
导包
-
作用为一次性指明某个或某些类和接口的来源
语法
import 包名.类名;
使用
-
位置:package语句下方,第一个类的上方
-
导包语句可被源文件中的所有类共用
-
导包语句可以存在多个
-
可以通过
import 包名.*
的方式一次性引入该包下的所有内容-
*
:最大的通配符,表示所有 -
无法引入子包中的内容
-
import 包名.*.*
是语法错误,*通配符一个导包语句只能使用一次
-
-
必须截止至类或接口,不能截止至包名
-
java.lang
包每个类都会默认引入
if分支
if(布尔表达式){ //操作语句 }
布尔表达式满足时执行操作语句,否则直接向下执行
int score=90; //判断成绩是否为100分,是则吃顿好的 if (score == 100) { System.out.println("吃顿好的"); } System.out.println("程序结束");
if-else分支
if(布尔表达式){ //操作语句1 }else{ //操作语句2 }
布尔表达式满足时执行if中的内容,否则执行else中的内容
一定会且只会执行其中一个结果
int score=90; //判断成绩是否为100分,是则吃顿好的,否则罚跑五圈 if (score == 100) { System.out.println("吃顿好的"); }else{ System.out.println("罚跑五圈"); }
嵌套if分支
if(外层布尔表达式){ if(内层布尔表达式){ //内层if }else{ //内层else } }else{ //外层else }
对嵌套位置、分支类型、嵌套层数不做要求
嵌套if分支是一个整体,至多执行出一个结果
int score=90; //判断成绩是否为100分,是则吃顿好的,判断是否及格,及格买瓶水,否则罚跑五圈 if (score == 100) { System.out.println("吃顿好的"); }else{ if (score >= 60) { System.out.println("买瓶水喝"); } else { System.out.println("罚跑五圈"); } }
多重if分支
if(布尔表达式1){ //操作语句1 }else if(布尔表达式2){ //操作语句2 }else if(布尔表达式3){ //操作语句3 }else{ //else中的操作语句 }
-
只要逻辑完整,else-if模块的数量不做要求
-
自上而下的判断执行
-
当执行到满足条件的分支模块时,剩余分支模块将不再执行
-
else模块可以省略,else如果存在,必须写在最下方
switch分支
-
作用于等值判断
switch(有具体值的变量|拥有具体值结果的表达式){ case 值1: //操作语句 break; case 值2: //操作语句 break; ... default: //操作语句 }
使用
-
自上而下的判断case,当有case匹配时剩余case将不再判断,若未执行到break则操作语句会继续向下执行
-
case的数量不做要求
-
default可以省略,且最位置不做要求(如果未写在最下方,则必须添加break)
-
break的作用为跳出switch的执行
-
多个case可以共用同一个操作语句:
int n=3; switch (n) { case 1: case 3: case 5: //if(n==1 || n==3 || n==5) System.out.println("奇数"); break; case 2: case 4: System.out.println("偶数"); break; }
-
多重if分支可以进行等值和区间判断,但是switch只能进行等值判断
-
多重if对判断的数据类型不做要求,但是switch只能判断byte、short、char、int、String(JDK7.0)
局部变量
概念
定义在方法内的变量
特点
-
作用范围:从定义行开始到直属代码块结束
-
命名冲突:同一作用范围内,不可重名