今天看了一下我的java03的笔记,发现后面的一大部分都被删了,可能是因为写了4天才发出来,文章内容太长了,我我发送了几次都没成功,最后成功发出了,也没检查,可惜了。
控制语句
选择结构语句 if if else switch
循环结构语句 for while do while
改变控制顺序 break continue
if 条件判断语句
public class Java_01 {
public static void main(String[] args){
int distance = 6;
if (distance < 5){
System.out.println("去kfc吃午饭!");
}
}
}
设计学生成绩评判
public class Java_01 {
public static void main(String[] args){
double score;
score = 60.0;
if (score <=100 || score >= 90) {
System.out.println('A');
} else if(score >= 80) {
System.out.println('B');
} else if(score >= 70) {
System.out.println('C');
} else if(score >= 60) {
System.out.println('D');
}else if(score >= 0) {
System.out.println('E');
} else {
System.out.println("对不起,您提供的考生成绩不合法!");
}
}
}
改进:
public class Java_01 {
public static void main(String[] args){
int score = 20;
String grade = "该考生的成绩等级是 E等级";
if (score <0 || score >= 100) {
grade = "对不起,您提供的考生成绩不合法!";
} else if(score >= 90) {
grade = "该考生的成绩等级是 A等级";
} else if(score >= 80) {
grade = "该考生的成绩等级是 B等级";
} else if(score >= 70) {
grade = "该考生的成绩等级是 C等级";
}else if(score >= 60) {
grade = "该考生的成绩等级是 D等级";
}else {
grade = "该考生的成绩等级是 E等级";
}
System.out.println(grade);
}
}
System.out.println():负责向控制台输出「从内存到控制台,输出的过程,从内存出来」 接受用户键盘输入,从"键盘"到"内存"。『输入的过程,到内存中去』
java 键盘输入
public class Java_01 {
public static void main(String[] args){
java.util.Scanner s = new java.util.Scanner(System.in);
int num = s.nextInt();
System.out.println("您输入的数字是:" + num);
System.out.println("计算结果:"+(num + 100));
}
}
年龄判断:
系统给定人的年龄,根据年龄,判断人处于哪个生命阶段,年龄范围:[0-150] [0-5] 幼儿 [6-10] 少儿 [11-18] 青少年 [19-35] 青年 [36-55] 中年 [56-150] 老年
public class Java_01 {
public static void main(String[] args){
java.util.Scanner s = new java.util.Scanner(System.in);
System.out.print("请输入您的年龄:");
int age = s.nextInt();
String str = "老年";
if (age < 0|| age>150){
str = "您提供的年龄不合法,年龄值需要在0~150之间!";
System.out.println(str);
System.exit(0);
}else if(age <= 5){
str = "幼儿";
}else if(age <= 10){
str = "少年";
}else if(age <= 18){
str = "青少年";
}else if(age <= 35){
str = "青年";
}else if(age <= 55){
str = "中年";
}
System.out.println("您出入生命周期的"+str+"阶段");
}
}
另外一种笨办法:
判断当前的天气:
当外边下雨:
带雨伞:
判断性别:
男: 带黑伞
女: 带花伞
当外边晴天:
判断天气温度:
30以上:
判断性别:
男: 戴墨镜
女: 擦防晒
要求:
天气,温度,性别,都需要从键盘输入。
天气状况: 1下雨, 0 晴天
温度: 数字
性别: 1男,0 女
*/
public class Java_01 {
public static void main(String[] args){
System.out.println("欢迎使用本系统");
System.out.println("说明1: 1表示下雨,0表示晴天");
System.out.println("说明2: 1表示男,0表示女");
System.out.println("说明3: 温度为数字");
java.util.Scanner s = new java.util.Scanner(System.in);
System.out.print("请输入性别:");
int sex = s.nextInt();
System.out.print("请输入当前天气状况:");
java.util.Scanner s1 = new java.util.Scanner(System.in);
int weather = s1.nextInt();
if(weather == 1){
if(sex == 1){
System.out.println("带一把大黑伞");
}else if(sex == 0){
System.out.println("带一把大花伞");
}else{
System.out.println("对不起,您的性别不存在!");
}
}else if(weather == 0){
System.out.print("请输入当前天气状况温度:");
int tem = s.nextInt();
if(tem > 30){
if (sex == 1) {
System.out.println("戴墨镜");
}else if(sex == 0){
System.out.println("擦防晒霜");
}else {
System.out.println("对不起,您的性别不存在!");
}
}
}else{
System.out.println("对不起,您输入的天气状况不存在!");
}
}
}
单行if else可以省略{}括号
public class Java_01{
public static void main(String[] args){
boolean sex = true;
if(sex){
System.out.println('男');
}else{
System.out.println('女');
}
}
public class Java_01 {
public static void main(String[] args) {
boolean sex = true;
sex = false;
if (sex) System.out.println('男');
else System.out.println('女');
}
}
总结
标识符:自己有权利命名的单词。 包括:类名,方法名,变量名,接口名,常量名。 标识符命名规则: 数字 字母 下划线 $ 不能以下划线开始。 命名规范:类名,接口名: 首字母大写。 遵循驼峰命名规则。 见名知意。 变量名和方法名:首字母小写。
关键字: 特殊含义的字。 不可以做标识符。 eg: public
字面值: 就是数据。 eg:10 ; 100 就是所谓的数据,存储在内存当中。
数据分门别类:整数型,布尔型,浮点数型,字符型,字符串型。
变量:内存中的一块空间。 三部分组成: 数据类型 变量名 字面值。 内存中,存储数据的最基本单元。
作用域: 变量的有效范围。 出了大括号就不认识了。
根据出现的位置,分为 成员变量和 局部变量。 局部变量:只在方法体中管用的对象,出了括号不认识了。 成员变量(全局变量):在方法体之外,类体之内的 所 声明的变量。
变量必须先声明,再赋值。 声明: 数据类型 变量值; 赋值: 变量值 = 字面值; 声明+赋值: int i = 10;
在同一个作用域中,变量之间不可以重名。 一行声明多个变量 int a,b,c = 1,2,3;
数据类型:对数据进行归类。 根据数据类型分配内存大小。 java中分为两大数据类型: 基本数据类型 和 引用数据类型。 基本数据类型:4大类 8小类。 4大类: 整数,浮点,字符,布尔。 8小类:byte,int,short,long,float,double, char,boolean. 取值范围: byte -128 - 127 int -21473648- 2147364847 short -32768 - 32767 long double char 0-65535 boolean true 和 false
二进制 十进制 ASCII表:字符型 通过 ASCII表 转换成 数字 a 97 A 65
gbk18030 unicode编码 utf8 java中采用的就是utf8编码
数据类型详解: char类型 可以存一个中文字 char类型 占2个字节
转义字符/ 整数型 byte,int,short,long 占用字节:1,2,4,6 表示形式(3种): 十进制 八进制 以0开始 十六进制 以0x开始
整数型字面值: 10,20,30当做int类型处理 long类型字面值要在后面加L 21463648L 如果整数字面值,没有超过byte,short,int,char的取值范围 这个整数型的字面值可以直接赋值给 byte,short,int,char对象。
浮点型:float 和 double。 3.1默认当做double处理。 在后面加f,当做float类型处理。eg: 3.1f double精度不够,使用引用数据类型的 java.math.BigDecimal
java中,提供了强大的库,有 原码 和 字节码 字节码位置 原码位置
布尔类型 只有两种:true和false
自动类型转换:小向大转 强制类型转换:大向小转,需要加强制类型转换符,可能损失精度。
byte short char 做运算,先转成int,再运算。
所以类型进行运算,先转成大的,再统一运算。
如果整数字面值,没超过 byte,int,short,char,可以直接将其赋值,不用考虑强制类型转换。
运算符 算术运算符 ++i 和 i++ 关系运算符 布尔运算符(逻辑运算符) && || & | ! 位运算符 赋值运算符 += 字符串连接运算符 + 条件运算符 A?B:C 如果A成立走B 不成立走C 三目/三元/条件运算符 其他运算符 流程控制 if判断 四种: if()… if()…else… if()…elseif()… if()…elseif()… else…
|