JAVA的初学之路
2020-05-05 12:30
1091 查看
JAVA学习
switch case ; while ; do while .的使用
今天是学习java的第六天,也是学习了一个礼拜了吧。总结一下这一个礼拜学了些什么。学会了第一行代码:
public class StudySix { public static void main(String[] args) { System.out.ln("加油呀"); } }
还学了 package(包的使用),了解了编码集,学了数据类型,整数:byte.short.int.long;小数(浮点数):float.double; 布尔类型:boolean = true;boolean= false;
字符类型:char ;if ; if else ; if else if ; switch case; while ; do while ;这一周学习了这些内容,记录一下。
明天就复习复习然后开始学后面的内容啦,离扛小宝贝回家还剩下175天。加油呀。
/* 用while来做一个点菜服务 需求 :1. 需要展示菜单和显示点单结束 2.点完菜后需要显示总价 1.烤羊排 50RMB 2.烤牛排 40RMB 3.火锅 150RMB 4.北京烤鸭 60RMB 5.青菜 15RMB 6.下单 */ import java.util.Scanner; public class Demo2 { public static void main(String[] args) { // 需要定义两个变量,一个用户选择变量,一个是结算价钱的变量 int choose = 0; float score = 0; Scanner sc = new Scanner(System.in); while (choose != 6) { System.out.println("1.烤羊排 50RMB "); System.out.println("2.烤牛排 40RMB "); System.out.println("3.火锅 150RMB "); System.out.println("4.北京烤鸭 60RMB "); System.out.println("5.青菜 15RMB "); System.out.println("6.下单 "); choose = sc.nextInt(); switch (choose) { case 1: System.out.println("1.烤羊排 50RMB "); score += 50; break; case 2: System.out.println("2.烤牛排 40RMB "); score += 40; break; case 3: System.out.println("3.火锅 150RMB "); score += 150; break; case 4 : System.out.println("4.北京烤鸭 60RMB "); score += 60; break; case 5: System.out.println("5.青菜 15RMB "); score += 15; break; case 6: System.out.print("总价钱为:"); break; default : System.out.println("输入错误,请从新输入"); break; } } System.out.print(score); } }
最后附上我的笔记一份。
if分支结构
1. 代码运行过程中的常见结构
顺序结构 代码从上到下,从左至右执行,最基本原则。 分支结构 路上的风景不一样,向左走向右走结果不一样。 代码满足不同的条件,执行不同的结果 循环结构 吃饭,睡觉,撸猫,辅导,上课 代码中存在需要多次执行的情况,这里会使用到循环结构
2. 分支结构
2.1 if 分支结构
if (/* 条件判断 */) { // 语句体 } /* 执行流程: 当前程序运行到if结构时,首先执行条件判断,条件判断的结果是一个boolean类型,如果条件判断为true,执行语句体,为false,不能执行语句体。 最后都会执行到大括号之外 */
/* if 分支结构演示 */ class Demo2 { public static void main(String[] args) { // 假设你兜里有10块钱 // int money = 10; // 假设你兜里有1块钱 int money = 10; // money > 5 是一个条件判断,结果是一个boolean if (money >= 5) { System.out.println("煎饼果子来一套"); money -= 5; System.out.println("余额 :" + money + "元"); } System.out.println("if大括号之外的代码~~~~"); } }
/* 1. 判断一个字符是不是大写英文字母 */ class Demo3 { public static void main(String[] args) { // 定义一个字符类型char 的变量 char ch = '我'; /* 代码结构安排的明明白白的!!! */ if (ch >= 'A' && ch <= 'Z') { System.out.println("这里是一个大写字母!!!"); } System.out.println("大括号之外的语句!!!"); } }
/* 2. 判断一个字符是不是英文字符 */ class Demo4 { public static void main(String[] args) { // 判断字符,需要使用一个char类型变量 char ch = '1'; /* (ch >= 'A' && ch <= 'Z') 大写字母范围 (ch >= 'a' && ch <= 'z') 小写字母范围 */ if ((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z')) { System.out.println("这是一个英文字母"); } System.out.println("if 大括号之外的代码"); } }
/* 3. 判断一个年份是不是闰年 能被4整除但是不能被100整除,或者能被400整除 */ class Demo5 { public static void main(String[] args) { // 年份是一个整数,这里使用int类型 int year = 2009; /* year % 4 == 0 && year % 100 != 0 || year % 400 == 0 */ if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { System.out.println("是闰年"); } } }
2.2 if else 分支结构
/* if 分支结构中只能处理条件满足的情况,条件不满足没有任何的处理语句。 if else分支结构。 */ if (/* 条件判断 */) { // true语句体 } else { // false语句体 } /* 执行流程: 代码执行到if else结构运行,首先判断if之后的条件判断,如果条件判断为true,执行true语句体,如果条件判断为false,执行false语句体。 世界上最遥远的距离是我在if里,你在else里 */
/* 1. 工资判断 月收入5000以上缴税 月收入5000以下不需要缴税 */ class Demo6 { public static void main(String[] args) { // 工资是一个浮点类型数据,这里使用double类型 double salary = 4999.0; /* 语句体: 大括号以内的内容,也可以称之为代码块 */ if (salary > 5000) { System.out.println("我为国家做贡献"); } else { System.out.println("我会继续努力,为国家做贡献"); } } }
/* 2. 是否有女朋友 有 true 没有 false */ class Demo7 { public static void main(String[] args) { // 是否有女朋友就两种情况,true or false boolean hasGirlFriend = false; /* if () 小括号内需要的数据类型是boolean类型 hasGirlFriend 该变量就是一个boolean类型数据,可以直接用于 if 直接的判断 */ if (hasGirlFriend) { System.out.println("奶茶买一送一"); } else { System.out.println("路见不平一声吼,你还没有女朋友"); } } }
/* 3. 判断一个字符是不是数字字符 */ class Demo8 { public static void main(String[] args) { // 需要判定的是一个数字字符,这里需要char类型 char ch = '我'; /* 这里操作判断的是一个字符类型数据 */ if (ch >= '0' && ch <= '9') { System.out.println("该字符是一个数字字符"); } else { System.out.println("该字符不是一个数字字符"); } } }
2.3 if else if 分支结构
学生成绩的等级划分: 90 ~ 100 秀儿 80 ~ 90 良儿 70 ~ 80 中儿 60 ~ 70 格儿 60 以下 让你爹穿着拖鞋来学校一趟 用户购物VIP等级 100 ~ 1000 铜牌会员 1001 ~ 5000 银牌会员 5001 ~ 10000 金牌牌会员 10001 ~ 50000 钻石会员 50001 黑钻会员
if (/* 条件匹配1 */) { // 处理方式1 } else if (/* 条件匹配2 */) { // 处理方式2 } else if (/* 条件匹配3 */) { // 处理方式3 } else { // 无匹配项最终处理方式 } /* 执行流程: 代码执行到if else if结构,从上至下,匹配if之后小括号里面的内容,条件匹配成功,执行对应的处理方式,结束分支结构运行。如果没有任何的一个条件匹配,执行else中的语句,也会终止条件匹配 【注意】 else if个数不限制,可以有多个!!! */
/* 用户购物VIP等级 100 ~ 1000 铜牌会员 1001 ~ 5000 银牌会员 5001 ~ 10000 金牌牌会员 10001 ~ 50000 钻石会员 50001 黑钻会员 */ class Demo9 { public static void main(String[] args) { // 用户的消费数据按照int类型考虑 int money = 50001; if (money >= 100 && money <= 1000) { System.out.println("铜牌会员"); } else if (money > 1000 && money <= 5000) { System.out.println("银牌会员"); } else if (money > 5000 && money <= 10000) { System.out.println("金牌会员"); } else if (money > 10000 && money <= 50000) { System.out.println("钻石会员"); } else if (money > 50000) { System.out.println("黑钻会员"); } else { System.out.println("非会员..."); } } }
/* 学生成绩的等级划分: 90 ~ 100 秀儿 80 ~ 90 良儿 70 ~ 80 中儿 60 ~ 70 格儿 60 以下 让你爹穿着拖鞋来学校一趟 */ class Demo10 { public static void main(String[] args) { /* 成绩考虑存在0.5的情况,需要使用浮点类型数据 这里采用float类型 */ float score = 59F; /* 成绩等级判断 */ if (score >= 90 && score <= 100) { System.out.println("秀儿"); } else if (score >= 80) { System.out.println("良儿"); } else if (score >= 70) { System.out.println("中儿"); } else if (score >= 60) { System.out.println("格儿"); } else { System.out.println("让你爹穿着拖鞋来学校一趟"); } } }
【补充知识点 Scanner 复制粘贴就可以了】
以上代码每一次的结果都是需要用户修改代码,保存,重新编译之后才可以进行执行结果。对于普通用户而言,该操作可行吗? 我们需要给程序提供一种方式,用于接受用户输入的数据!!! Scanner是Java中提供的用于从控制台输入数据到代码中的一种方式,存在一些弊端,容易导致一些错误,这里只要求大家了解一些必要的方法。 【Scanner操作哪里需要沾哪里】 Scanner使用流程 1. 点技能点,Java程序本身是没有直接使用Scanner的能力,这里需要点技能点。 官网操作【导包】 固定格式: import java.util.Scanner; 放在class代码上一行 2. 需要得到一个Scanner的变量 固定格式: Scanner sc = new Scanner(System.in); 3. 选择执行对应的方法,从键盘上获取对应的数据 获取int类型 int类型的变量 = sc.nextInt(); 获取float类型 float类型的变量 = sc.nextFloat(); 获取double类型 double类型的变量 = sc.nextDouble(); 获取char类型 char类型的变量 = sc.nextLine().charAt(0);
【补充知识点 用户友好性提示】
代码运行需要站着用户的角度来思考问题。用户进行操作时,需要给予用户足够的提示和引导,告知用户当前操作如何完成,考虑代码的友好性!!! 用户粘性问题!!!用户提示!!!用户友好性!!!
【补充知识点 用户输入数据合法性判断】
就算在提示中告知用户需要输入的数据范围是多少,但是用户在实际使用的过程中,依然存在输入错误的情况。需要对于用户输入的数据进行合法性判断,如果用户输入的内容符合我们的判断逻辑需求,进入数据处理过程。如果不符合要求,直接终止程序!!!
/* 学生成绩的等级划分: 90 ~ 100 秀儿 80 ~ 90 良儿 70 ~ 80 中儿 60 ~ 70 格儿 60 以下 让你爹穿着拖鞋来学校一趟 */ // 导包,让当前Java代码可以使用Scanner import java.util.Scanner; class Demo10 { public static void main(String[] args) { /* 成绩考虑存在0.5的情况,需要使用浮点类型数据 这里采用float类型,这里赋值一个初值 */ float score = 0.0F; // 需要得到一个Scanner的变量 Scanner sc = new Scanner(System.in); /* 提示用户操作 */ System.out.println("请输入学生的成绩1 ~ 100:"); score = sc.nextFloat(); /* 验证用户输入数据的合法性 如果用户输入的数据不合法,终止程序!!! 不合法: 输入数据 > 100 或者 < 0 */ if (score > 100 || score < 0) { System.out.println("输入数据不合法!!!"); // 程序退出 System.exit(0); } /* 成绩等级判断 */ if (score >= 90 && score <= 100) { System.out.println("秀儿"); } else if (score >= 80) { System.out.println("良儿"); } else if (score >= 70) { System.out.println("中儿"); } else if (score >= 60) { System.out.println("格儿"); } else { System.out.println("让你爹穿着拖鞋来学校一趟"); } } }
3. 总结
分支结构用于处理代码中出现的一些需要判断,并且按按条件处理的情况!!! 1. 条件约束考虑清楚 2. 处理的过程考虑清楚 3. 数据类型选择双双的小猪猪 原创文章 17获赞 0访问量 241 关注 私信
相关文章推荐
- Java初学几天的总结——一个菜鸡的自我学习之路(6)
- Java初学几天的总结——一个菜鸡的自我学习之路(5)
- Java初学几天的总结——一个菜鸡的自我学习之路(4)
- Java初学几天的总结——一个菜鸡的自我学习之路(3)
- Java初学几天的学习总结——一个菜鸡的自我学习之路(2)
- Java初学几天的学习总结——一个菜鸡的自我学习之路(1)
- 我的JAVA初学之路----List集合和Set集合(上)
- Java初学几天的总结——一个菜鸡的自我学习之路(10)
- Java初学几天的总结——一个菜鸡的自我学习之路(9)
- Java初学几天的总结——一个菜鸡的自我学习之路(8)
- Java初学几天的总结——一个菜鸡的自我学习之路(7)
- 写给自己的JAVA工程师之路-基础类库
- 艰辛的aptana插件安装之路(续)--成功解决myeclipse不能启动和报java.lang.NullPointerException的问题
- 【Java入坑之路】已解决,SpringBoot虚拟路径映射没效果是怎么回事
- (转载) 再论Java未来之路
- 初学javaDay24
- JAVA学习之路:不走弯路, 就是捷径
- 初学javaDay8
- 初学JAVA何去何从(将登录进行到底--八次写登录页面的收获)
- spring boot 让Java开发之路更简单