switch(格式){
case 1:
语句体1:
break;
case 2:
语句体2:
break;
....
default:
语句体n+1;
break;
}
春:3、4、5
夏:6、7、8
秋:9、10、11
冬:1,2,12
public class Demo{
public static void main(String[] args){
//键盘录入月份数据,使用变量接收
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个月份:");
int month = sc.nextInt();
//case 穿透
switch(month){
case 1:
case 2:
case 12:
System.out.prinln("冬季");
break;
case 3:
case 4:
case 5:
System.out.prinln("春季");
break;
case 6:
case 7:
case 8:
System.out.prinln("夏季");
break;
case 9:
case 10:
case 11:
System.out.prinln("秋季");
break;
default:
System.out.println("你输入的月份有误");
}
}
}
for(初始化语句;条件判断语句;条件控制语句){
循环体语句;
}
public class ForTest01 {
public static void main(String[] args) {
//需求:输出数据1-5
for(int i=0;i<=5: i++){
System.out.println(i);
}
System.out.println("-------------");
//需求输出数据5-1
for(int i=5;i>=1;i--){
System.out.println(i);
}
}
}
public class ForTest02{
public static void main(String[] args){
//求和的最终结果必须保存起来,需要定义一个变量,用于保存求和的结果,初始值为0
int sum = 0;
//从1开始到5结束的数据,使用循环结构完成
for(int i=1;i<=5; i++){
//将反复进行的事情写入循环结构内部
//此处反复进行的事情是将数据i加到用于保存最终求和的变量sum中
sum += i;
/*
sunm +=i; sum = sum + i;
第一次:sum = sum + i = 0+1=1;
第二次:sum = sum + i = 1+2=3;
第三次:sum = sum + i = 3+3=6;
第四次:sum = sum + i = 6+4=10;
第五次:sum = sum + i = 10+5=15;
*/
}
//当循环执行完毕时,将最终数据打印出来
System.out.println("1-5之间的数据和是:"+ sum);
}
}
public class ForTest03 {
public static void main(String[] args){
//求和的最终结果必须保存起来,需要定义一个变量,用于保存求和的结果,初始值为0
int sum = 0;
//d对1-100的数据求和与1-5的数据求和几乎完全一样,仅仅是结束条件不同
for(int i=1; i<=100; i++){
//对1-100的偶数求和,需要对求和操作添加限制条件,判断是否是偶数
if(i%2 == 0){
sum += i;
}
}
//当循环执行完毕时,将最终数据打印出来
System.out.println("1-100之间的偶数和是:" + sum);
}
}
需求:在控制台输出的所有的“水仙花数”
解释:什么是水仙花数?
153: 3 * 3* 3 +5 * 5 * 5 + 1 *1 *1 =153
思路
示例代码
public class ForTest04 {
public static void main(String[] args) {
//输出所有的水仙花数必然使用到循环,遍历所有的三位数,三位数从100开始,到999结束
for(int i = 100;i<1000;i++) {
//在计算之前获取三位数中每个位上的值
int ge = i%10;
int shi = i/10%10;
int bai =i/10/10%10;
//判定条件是将三位数中的每个数值取出来,计算立方和后与原始数字比较是否相等
if(ge*ge*ge + shi*shi*shi + bai*bai*bai == i) {
//输出满足条件的数字就是水仙花数
System.out.println(i);
}
}
}
}
public class ForTest04 {
public static void main(String[] args) {
//定义变量count,用于保存“水仙花数”的数量,初始值为0
int count = 0;
//输出所有的水仙花数必然使用到循环,遍历所有的三位数,三位数从100开始,到999结束
for(int i = 100;i<1000;i++) {
//在计算之前获取三位数中每个位上的值
int ge = i%10;
int shi = i/10%10;
int bai =i/10/10%10;
//在判定水仙花数的过程中,满足条件不在输出,更改为count的值,使count+1
if(ge*ge*ge + shi*shi*shi + bai*bai*bai == i) {
count++;
}
}
//打印输出最终结果
System.out.println("水仙花有:"+count+"个");
}
}
本题要点:
初始化语句;
while(条件判断语句){
循环体语句;
条件控制语句;
}
public class WhileDemo {
public static void main(String[] args) {
//需求:在控制台输出5次“helloworld”
//for循环实现
for(int i=1;i<=5;i++){
System.out.println("HelloWorld");
}
System.out.println("--------------------");
//while循环实现
int j =1;
while(j<=5){
System.out.println("HelloWorld");
j++;
}
}
public class WhileTset {
public static void main(String[] args) {
//定义一个计数器,初始值为0
int count = 0;
//定义纸张厚度
double paper = 0.1;
//定义珠穆朗玛峰的高度
int zf =8844430;
//因为要反复折叠,所以要使用循环,但是不知道折叠多少次,这种情况下更适合使用while循环
//折叠的过程中当纸张厚度大于珠峰就停止了,因此继续执行的要求使纸张厚度小于珠峰高度
while(paper <= zf) {
//循环的执行过程中每次纸张折叠,纸张的厚度要加倍
paper *= 2;
//在循环中执行累加,对应折叠了多少次
count++;
}
//打印计数器的值
System.out.println("需要折叠:"+count+"次");
}
初始化语句;
do {
循环体语句;
条件控制语句;
}while(条件判断语句);
public class DOWhileDemo {
public static void main(String[] args) {
//需求:在控制台输出5次“helloworld”
//for循环实现
for(int i=1;i<=5;i++){
System.out.println("HelloWorld");
}
System.out.println("------------");
//do...while 循环实现
int j = 1;
do{
System.out.println("Helloworld");
j++
}while(j<=5)
}
}
三种循环的区别
for循环和while循环的区别
死循环(无限循环)的三种格式
public class ForForDemo {
public static void main(String[] args) {
//外循环控制小时的范围,内循环控制分钟的范围
for (int hour = 0; hour < 24; hour++) {
for(int minute = 0; minute < 60; minute++) {
System.out.println(hout+"时"+minute+"分");
}
}
}
}
概述:
使用步骤
示例代码:
import java.util.Random;
public class RandomDemo {
public static void main(String[] args) {
//创建对象
Random r = new RanDom();
//用循环获取10个随机数
for(int i=0;i<10;i++) {
//获取随机数
int number = r.nextInt(10);
System.out.println("number:"+number);
}
//需求:获取一个1-100之间的随机数
int x = r.nextInt(100)+1;
System.out.println(x);
}
}
import java.util.Random;
import java.util.Scanner;
public class RandomTest {
public static void main(String[] args) {
//要完成猜数字的游戏,首先需要有一个要猜的数字,使用随机数生成该数字,范围1到100
Random r = new Random();
int number = r.nextInt(100) + 1;
while(true) {
//使用程序实现猜数字,每次均要输入猜测的数字值,需要使用键盘录入实现
Scanner sc = new Scanner(System.in);
System.out.println("请输入要猜是数字");
int guessNumber = sc.nextInt();
//比较输入的数字和系统产生的数据,需要使用分支语句。
//这里使用if..else..if格式,根据不同情况进行猜测结果显示
if(guessNumber > number) {
System.out.println("你猜的数字"+guessNumber+"大了");
} else if(guessNumber < number) {
System.out.println("你猜的数字"+guessNumber+"小了");
} else {
System.out.println("恭喜你猜中了");
break;
}
}
}
}