我是张骚年,量子玄学信徒,祖安冲浪王者,B站白嫖大师,撕少保护协会资深会员,一个没有感情的表情包机器。
应届二本物理找不到工作,准备用五个月转行Java”上流社会“
前言
已经三天没有更新了,也不是不学了,也不是不写了,只是因为五一外出进行了一下“多人运动”(旅游),没有做好时间管理,耽误了学习。
三天没学,前面学的也忘了差不多,从此深刻的体会到了时间管理的重要性,和学习比起来,黑眼圈又算的了什么?
哎 好想做一个“时间刺客”,掌控自己的时间,毕竟凌晨四点也是可以更新掘金的。
今日学习目标
今天先复习之前的学习内容,然后学习if的条件判断的使用,多做练习题。
今日学习难点
无
学习笔记 重点总结
学习笔记—局部变量
局部变量的概念
定义在函数的内部的变量
局部变量的特点
-
局部变量必须先赋值后使用 -
从定义开始,到定义它的代码块结束 -
在重合作用范围内,不允许定义同名的变量(避免命名冲突)
class Day03{
public static void main(String[] args) {
{
// 局部变量 a 作用范围到所在代码块结束
int a = 1;
System.out.println(a);
}
System.out.println("----------");
{
// 局部变量必须先赋值后使用
int a ;
// 此时还不能打印 因为没有赋值
// System.out.println(a);
a = 2;
// 此时可以正常使用 已经赋值了
System.out.println(a);
}
}
}
学习笔记—Scanner 和 导包
扫描器的使用
**
局部变量需要先赋值后使用,给变量赋值有两种方式:
-
在代码中,创建变量的时候直接赋值 -
借助扫描器(Scanner)通过键盘输入值
public class Day03 {
public static void main(String[] args) {
// 1.创建一个扫描器
java.util.Scanner sc=new java.util.Scanner(System.in);
// 2.输入a的值 nextInt() 接受键盘输入的整数
int a = sc.nextInt();
// 3.打印a
System.out.println(a);
}
}
----------------- Scanner 其他的方法 -------------------------
//输入一个小数
double d = sc.nextDouble();
//输入一个字符串
String s = sc.next();
//输入一个字符
char c = sc.next().charAt(0);
导包
Scanner是java.util包的,那么java.util. 可以简写吗?通过导包语法
导包语法:
-
import 包名1.包名2.类名; //只导入包中的一个类 -
import 包名1.包名2.*; //导入包中的所有类
import java.util.*;
import java.util.Scanner;
注意:
-
import 语句位于package语句之后 -
java.lang 包中的内容,例如String,会自动导入,不需要写import
学习笔记—条件分支**
基本if结构
执行流程:先判断布尔条件结果是否为true,是true,则执行其后{}中的代码块;
否则跳过代码块,执行if结构之后的语句。
if(布尔表达式){
//代码块
}
if else 结构
执行流程:先判断布尔条件结果是否为true,是true,则执行if后{}中的代码块1;
否则执行else后{}中的代码块2;
不管执行哪个代码块,都要执行if...else...结构之后的内容。
if(布尔表达式){
//代码块1...
} else{
//代码块2...
}
多重if结构
执行流程:
如果布尔条件1成立,则执行代码块1的内容;
如果布尔条件2成立,则执行代码块2的内容;
如果条件3成立,则执行代码块3中的内容;
如果布尔条件都不成立,则执行代码块4的内容
if (布尔条件1){
//代码块1.....
} else if(布尔条件2){
//代码块2....
} else if(布尔条件3){
//代码块3....
} else {
//代码块4....
}
嵌套if结构
执行流程:先判断外层条件,成立,则再判断内层条件。
if(布尔条件1){
if (布尔条件2){
//代码块...
}
} else{
if (布尔条件2){
//代码块...
}
}
学习笔记—switch...case
基本使用
-
switch()中的表达式结果类型必须是byte、short、int、char 类型,jdk7.0 支持String类型 -
当表达式的结果匹配上case后面的值时,对应的代码块就会被执行。
case后面的值,不允许重复,并且一个case后面只能跟一个数据。 当位置连续的两个case后面的代码语句完全一致时,可以将位置在前的case后面的语句省略。
switch(表达式){
case 值1: 代码块1;
case 值2: 代码块2;
case 值3: 代码块2;
}
switch()中的表达式结果类型必须是byte、short、int、char 类型,jdk7.0 支持String类型
当表达式的结果匹配上case后面的值时,对应的代码块就会被执行。
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个整数:");
int n=sc.nextInt();
switch(n){
case 1:System.out.println("好好学习");
case 2:System.out.println("天天向上");
case 3:System.out.println("坚持就是胜利");
}
System.out.println("ending...");
}
}
第一次输入和最后一个case匹配的值,运行结果OK
第二次输入和其它case匹配成功的值,运行多个case的结果
break
当表达式的结果匹配上case后面的某个值时,其后的代码块会被执行, 但并不会退出整个switch语句,需要使用break;语句终止switch...case结构
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个整数:");
int n=sc.nextInt();
switch(n){
case 1:System.out.println("好好学习");break;
case 2:System.out.println("天天向上");break;
case 3:System.out.println("坚持就是胜利");break;
}
System.out.println("ending...");
}
}
default
当表达式的结果和所有case后面的值都没有匹配成功时,则默认执行default后面的语句。
default语句没有先后顺序,通常写在后面。当default定义在后面时,break可以省略,但是定义在其它位置时,break不可以省略
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个整数:");
int n=sc.nextInt();
switch(n){
case 1:System.out.println("好好学习");break;
case 2:System.out.println("天天向上");break;
case 3:System.out.println("坚持就是胜利");break;
default:
System.out.println("哈哈哈哈");
}
System.out.println("ending...");
}
学完做做题
1.学生成绩划分等级: 90~100 输出 "优秀 " 80~90 输出 "良好 " 60~80 输出"及格" 60分以下,输出 "不及格 "
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个成绩:");
double score=sc.nextDouble();
if(score>=90 && score<=100){
System.out.println("优秀");
}else if(score>=80 && score<90){
System.out.println("良好");
}else if(score>=60 && score<80){
System.out.println("及格");
}else{
System.out.println("不及格");
}
}
}
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个成绩:");
double score=sc.nextDouble();
if(score>=0 && score<=100){
if(score>=90 && score<=100){
System.out.println("优秀");
}else if(score>=80 && score<90){
System.out.println("良好");
}else if(score>=60 && score<80){
System.out.println("及格");
}else{
System.out.println("不及格");
}
}else{
System.out.println("请输入有效成绩...");
}
}
}
今日学习名词
名词 | 含义 |
---|---|
Scanner | 扫描器 |
switch | 开关 转换器 转变 |
case | 具体情况; 事例 |
今日学习总结
![](https://i-blog.csdnimg.cn/blog_migrate/97467afd2fc6955c8c7079a6a2733bb0.png)
劝退日记
杭州的设计师转行送外卖了,找到了人生的意义,每天都很快乐。送外卖貌似也不错,毕竟公司送制服,送帽子,帽子上还可以加一个竹蜻蜓......