Java编程基础阶段笔记 day04 Java基础语法(下)
day04 Java基础语法 (下)
笔记Notes要点
switch-case语句注意
switch-case题目(switchTest5)
循环执行顺序
if-else 实现3个整数排序
String字符串比较
循环四要素
打印九九乘法表
特殊关键字continue、break
switch(表达式) 表达式里仅支持 byte、short、char、int、枚举、String(jdk1.7后)
switch(表达式){
case 常量1: 执行语句1; break; case 常量2: 执行语句2; break; ...... default: 执行语句n; break; }
case 后面只能跟常量,default是可选的。如果都没有匹配成功则执行default中的执行语句。default的位置是灵活的。
switch-case和if-else可以替换,switch-case效率高一些
/*
从键盘分别输入年、月、日,判断这一天是当年的第几天
注:判断一年是否是闰年的标准:
1)可以被4整除,但不可被100整除 或 2)可以被400整除
*/
import java.util.Scanner;
public class SwitchTest5{
public static void main(String[] args){ //1.读取数据 Scanner sc = new Scanner(System.in); System.out.println("请输入年份"); int year = sc.nextInt(); System.out.println("请输入月份"); int month = sc.nextInt(); System.out.println("请输入日期"); int day = sc.nextInt(); int sumDay = 0; //用来统计当年的总天数 //2.统计天数 switch(month){ case 4: sumDay += 31; case 3: //判断当年是否是闰年 if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)){ sumDay += 29; }else{ sumDay += 28; } case 2: sumDay += 31; case 1: sumDay += day; } //3.输出 System.out.println(year + "年" + month + "月" + day + "日是当年的第" + sumDay + "天"); }
}
/*
编写程序:由键盘输入三个整数分别存入变量num1、num2、num3, 对它们进行排序(使用 if-else if-else),并且从小到大输出。
*/
import java.util.Scanner;
public class IfTest
{
public static void main(String[] args){ Scanner sc = new Scanner(System.in); System.out.println("请输入三个数字"); int num1,num2,num3; num1 = sc.nextInt(); num2 = sc.nextInt(); num3 = sc.nextInt(); if(num1>num2){ if(num3>num1){//num3最大 System.out.println("小到大:"+ num2 +" "+ num1 +" "+ num3); }else if(num3<num2){//num3最小 System.out.print("小到大:"+ num3 + " " + num2 + " " + num1); }else{ System.out.println("小到大:"+ num2 + " " + num3 + " " + num1); } }else{//num1<num2 if(num3>num2){//num3最大 System.out.println("小到大:"+ num1 + " "+ num2 + " "+ num3); }else if(num3<num1){//num2最大 System.out.println("小到大:"+ num3 + " " + num1 + " " + num2); }else{ System.out.println("小到大:"+ num1 + " " + num3 + " " + num2); } } }
}
String字符串比较
String str = new String("帅");
//判断帅不帅 System.out.println("帅" == str); //这样不能比字符串的内容 boolean handsome = "帅".equals(str); //比较的是字符串的内容 - 如果内容相同返回true否则返回false
switch使用小技巧
对学生成绩大于60分的,输出“合格”。低于60分的,输出“不合格”
switch(score / 60){
case 0: System.out.println("不合格"); break; case 1: System.out.println("合格"); break;
编写程序:输入月,日,输出第几天
/*
- 编写程序:从键盘上输入2019年的“month”和“day”,要求通过程序输出输入的日期为2019年的第几天。
*/
import java.util.Scanner;
public class SwitchTest4{
public static void main(String[] args){ //1.读取数据 Scanner sc = new Scanner(System.in); System.out.println("请输入月份"); int month = sc.nextInt(); System.out.println("请输入日期"); int day = sc.nextInt();
int sumDay = 0; //用来统计当年的总天数 //2.统计天数 switch(month){ /* case 1: sumDay = day; break; case 2: sumDay = day + 31; break; case 3: sumDay = day + 31 + 28; break; case 4: sumDay = day + 31 + 28 + 31; break; */
case 4: sumDay += 31; case 3: sumDay += 28; //赋值和+=完全不一样。sumDay += 28 : 除了sumDay原来的天数再额外加上28 case 2: sumDay += 31; // sumDay = sumDay + 31 case 1: sumDay += day; }
//3.输出 System.out.println("2019年" + month + "月" + day + "日是当年的第" + sumDay + "天");
}
}
编写程序:输入年,月,日,输出第几天
/*
从键盘分别输入年、月、日,判断这一天是当年的第几天
注:判断一年是否是闰年的标准:
1)可以被4整除,但不可被100整除 或 2)可以被400整除
*/
import java.util.Scanner;
public class SwitchTest4
{
public static void main(String[] args){ Scanner sc = new Scanner(System.in); System.out.println("请输入年份:"); int year = sc.nextInt(); System.out.println("请输入月份:"); int month = sc.nextInt(); System.out.println("请输入天数:"); int day = sc.nextInt(); int sumDay = 0; switch(month){ case 12: sumDay += 30; case 11: sumDay += 31; case 10: sumDay += 30; case 9: sumDay += 31; case 8: sumDay += 31; case 7: sumDay += 30; case 6: sumDay += 31; case 5: sumDay += 30; case 4: sumDay += 31; case 3: // 28或 29 if((year%4==0&&year%100!=0)||year % 400 ==0){//闰年 sumDay += 29; }else{ sumDay += 28; } case 2: sumDay += 31; case 1: sumDay += day; break; } System.out.println(year+"年" + month + "月" + day + "日是当年的第" + sumDay + "天"); }
}
循环四要素
循环的四个部分:
1.初始化条件 2.循环条件 3.循环体 4.迭代条件
打印九九乘法表
/*
1*1=1
12=2 22=4
13=3 23=6 3*3=9
打印九九乘法表
*/
public class c99
{
public static void main(String[] args){ int i,j; for(i=1;i<=9;i++){//9行 for(j=1;j<=i;j++){ System.out.print(j + "*" +i+" = "+ i*j +" "); } System.out.println(); } }
}
特殊关键字continue、break
break用于 switch-case语句与循环结构中,表示结束当前case语句,结束循环语句
continue,用于 循环结构 表示结束当此循环。
在嵌套循环中break结束的包含该语句的循环语句,对外层循环无作用
在嵌套循环中continue跳出的是包含他的循环语句的当次循环,不跳出
嵌套循环中如何使用内部循环的break结束外层循环
可以给循环命名,break + 循环名字
总结Summary
if-else实现三个整数排序
打印九九乘法表
break,continue使用注意事项
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
怎么理解分布式、高并发、多线程?(含面试题和答案解析)
看到分布式、高并发、多线程这三个词的时候,很多人是不是都认为分布式=高并发=多线程?当面试官问到高并发系统可以采用哪些手段来解决,或者被问到分布式系统如何解决一致性的问题,是不是一脸懵逼? 确实,在一开始接触的时候,不少人都会分布式、高并发、多线程将三者混淆,误以为所谓的分布式高并发的系统就是能同时供海量用户访问,而采用多线程手段不就是可以提供系统的并发能力吗?实际上,他们三个总是相伴而生,但侧重点又有不同。 接下来我就看看分布式、高并发、多线程这三者之间到底有什么区别?什么是分布式?分布式更多的一个概念,是为了解决单个物理服务器容量和性能瓶颈问题而采用的优化手段。该领域需要解决的问题极多,在不同的技术层面上,又包括:分布式文件系统、分布式缓存、分布式数据库、分布式计算等,一些名词如Hadoop、zookeeper、MQ等都跟分布式有关。从理念上讲,分布式的实现有两种形式: 水平扩展:当一台机器扛不住流量时,就通过添加机器的方式,将流量平分到所有服务器上,所有机器都可以提供相当的服务;垂直拆分:前端有多种查询需求时,一台机器扛不住,可以将不同的需求分发到不同的机器上,比如A机器处理余票...
- 下一篇
Java编程基础阶段笔记 day05 数组
数组 笔记Notes 数组介绍 数组的声明 数组初始化 数组元素默认值 数组复制 数组反转 数组查找:线性查找、二分查找 数组排序:冒泡排序 数组介绍 数组名: 创建数组内存中开辟一整块连续的空间,而数组名中引用的是这块连续空间的首地址。 下标(或索引):从0开始 数组是引用数据类型, 元素相当于类的成员变量, 数组一经分配空间,其中的每个元素也被按照成员变量同样的方式被隐式初始化 数组中的元素可以是基本数据类型也可以是引用数据类型 数组的声明 声明:String[] names; int scores[]; 数组初始化:静态初始化、动态初始化 静态初始化:数组的初始化和赋值是同时进行的 names = new String{"12","34","56","78"}; 动态初始化:数组的初始化和赋值分开进行 String[] names2 = new String[5]; names2[0] = "123"; 下面的方式数组的声明和初始化不能分开。 int[] age = { 1, 2, 3, 4, 5, 6 }; 数组元素的默认值 byte、short、int、long -->...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- CentOS8安装Docker,最新的服务器搭配容器使用