初识Java
熟练掌握安装、配置jdk开发环境
- 官网下载java-jdk
- 环境变量是为了跟快捷的使用Java的jdk
熟练掌握使用记事本开发Java程序
1.类的名字和文件名一定要相同
2.类:public class xx
3.方法:public static void main(String[] args)
4.输出:System.out.println("");
会使用MyEclipse开发Java程序
-
用包组织Java源文件,类似于文件夹
-
选择菜单"Window–Show View–Package Explorer"打开
使用java反编译工具
- 将源文件(.Java)转换成字节码文件(.class)的过程成为编译
- 将字节码文件(.class)转换回源文件(.Java)的过程成为反编译
- Jad、FrontEnd
变量
规则
- 字母、下划线、美元符号、人民币符号、数字、使驼峰命名法有意义
- 不能使用关键字,如public、class
掌握变量使用
- 第一步:声明变量,根据数据类型在内存申请空间
- 第二步:赋值,即“将数据存储至对应的内存空间”
- 第三步:使用变量,即"取出数据使用"
常量的使用
优点和规则
- 比较安全
- 常量名通常大写
- 不同字符使用下划线分割
- 只能被赋值一次,通常定义时即对其初始化
- 变量前加:final
算术运算符
- % = 除于取下面的值
- / = 除于取上面的值
- ++ = +1
- ++前面就先加在运算;++放在后面就先运算后再加1
- – = -1
- ++ 比 == 优先
逻辑运算符
- &&
短路与
两个操作数都是true,结果才是true - ||
短路或
两个操作数一个是true,结果就是true - !
非
操作数为true,结果为false
操作数为false,结果为true - 如果第一个操作数已经能确定表达式的值,第二个操作数就不必计算了;优先级别!>&&>||
条件运算符(三目运算符)
- 条件 ?表达式1 : 表达式2 (语法)
- 表达式1成立就给前面的值;不成立就给后面的值
- int min;
了解Java中的数据类型
-
数据类型
数值
整型
(1)byte(2)short
(3)long
(4)int(整数常用)
-
浮点型
(1)double (有小数点常用这个)
(2)float (要在后面加f)
-
非数值
(1)char (字符型)
(2)boolean(布尔型)
(3)true
(4)false
(5)string (不是基本数据类型,是引用数据类型,他是Java提供的一个类)
-
Scanner
接收键盘输入的值
-
第一步:导入Scanner的类
import java.util.* -
第二步:创建Scanner对象
Scanner XX = new Scaner(System.in) -
第三步:获得键盘输入的值
int XX = input.xtlnt();
int XX = sc.nextlnt -
例如:输入会员卡号
-
import java.util.Scanner;
public class yi{
public static void main(String[] args){
int custNo; //会员号
System.out.println("请输入会员卡号:");
Scanner input=new Scanner(System.in); //括号里面代表键盘
custNo=input.nextInt(); //nextInt()获取从键盘输入的一个整数,并赋值给num变量
System.out.println("会员卡号是:"+custNo);
}
}
5. 列如:实现抽奖程序
```
import java.util.Scanner;
public class qi{
public static void main(String[] args){
int custNo; //会员号
System.out.println("请输入会员卡号:");
Scanner input=new Scanner(System.in); //括号里面代表键盘
custNo=input.nextInt(); //nextInt()获取从键盘输入的一个整数,并赋值给num变量
System.out.println("会员卡号是:"+custNo);
//利用"/"和"%"运算符获得每位数字
int ge=custNo%10; //分解获得个位数
int shi=custNo/10%10; //分解获得十位数
int bai=custNo/100%10; //分解获得百位数
int qian=custNo/1000; //分解获得千位数
System.out.print("千位数:"+qian+",百位数:"+bai+",十位数:"+shi+",个位数:"+ge,);
//利用"+"运算符计算数字之和
int sum=ge+shi+bai+qian;
System.out.println("会员卡号"+custNo+"各位之和:"+sum);
//判断是否中奖
if(sum>20){
System.out.println("会员卡号"+custNo+"的会员,恭喜您中奖了!奖品是MP4!");
}else{
System.out.println("会员卡号"+custNo+"的会员,很遗憾,您没有中奖!");
//System.out.print(sum>20?"恭喜您中奖了!奖品是MP4!":"很遗憾,您没有中奖!");
}
}
}
```
掌握数据类型转换
自动类型转换
-
规则一:如果一个操作数为double型,则整个表达式可提升为double型
-
规则二满足自动类型转换的条件
(1)两种类型要兼容
数值类型(整型和浮点型)互相兼容
(2)目标类型大于原类型:
double型大于int型-
列如:
import java.util.Scanner; public class er{ public static void main(String[] args){ double diyi=81.29;//第一次平均分 double dier; int rise = 2; dier = diyi + rise; System.out.println("第二次平均分是:"+dier); } }
-
强制类型转换规则
-
int b = (int)10.2;
结果为10 -
double a = 10;
结果为10.0 -
int c = (int)a;
结果为10 -
等于后面加小括号写上数据类型并和之前的数据类型一样
低的类型自动变成高的类型 (概括) -
列如:
int num = 786;
byte by = num; //错误
byte by = (byte)num; //正确,为强制类型转换
short sh = num; //错误
short sh = (short)num; //正确,为强制类型转换
选择结构
掌握if分支结构
基本的if选择结构
-
if与具有条件表达式紧随其后的语句组成.如果if条件表达式后面有多个语句,千万不要忘记:在多个语句的前后添加一对大括号.
-
if-else语句由if和紧随其后的else组成
-
else子句不能单独使用,必须是if语句的一部分,与最近的if语句配对使用
-
无论多分支if语句中有多少个表达式,只会执行符合条件的一个.如果没有符合条件的,则执行else子句中的语句
-
if或else字句中要执行的语句超过一条,则必须将这些语句用大括号括起来
-
列如:if(条件){//代码块}else if{(代码块2)}else{代码块3}
-
例如:使用多分支if语句判断成绩值
题目:
如果成绩大于等于90且小于100,则输入信息"A级"
如果成绩大于等于80,则输入信息"B级"
如果成绩大于等于70,则输入信息"C级"
如果成绩大于等于60,则输入信息"D级"
如果成绩低于60,则输入信息"E级"
public stats void main(String[] args){
int score = 85;
if(score>=90 && score<=100){ //判断score值是否大于等于90且小于等于100
System.out.println(“A级”);
}else if(score>=80){ //判断score值是否大于等于80且小于90
System.out.println(“B级”);
}else if(else>=70){ //判断score值是否大于等于70且小于80
System.out.println(“C级”);
}else if(else>=60){ //判断score值是否大于等于60且小于70
System.out.println(“D级”);
}else{ //判断score值小于60
System.out.println(“E级”);
}
}
## 掌握switch分支结构
1. switch用于实现多分枝选择结构.他和多分支if控制语句结构在某种情况下可以相互替代.
2. 如果case后面没有break语句,程序将继续向下执行,直到遇到break语句或switch语句结束,
3. switch、case、break、default是Java关键字
4. switch后的表达方式可以是int、short、byte、char、枚举类型、String类型表达式
5. case用于与表达式进行匹配
6. break用于终止后续语句的执行
7. default是可选的,当其他条件都不匹配时执行default
例如:
switch(表达式){
case常量1:
语句;
break;
case常量2:
语句;
break;
default:
语句;
break;
}