day4 java基础(for循环,switch循环)

--------------------------知识点1---------------------------------
/*
需求:请输出一个4行5列的星星()图案。
结果:
*****
*****
*****
*****
/
class ForForDemo{
public static void main(String [] args){
for (int x = 0;x < 4; x++){
for (int y = 0; y < 5; y++ ){
System.out.print("
");
}
System.out.println();
}
}
}
--------------------------知识点2---------------------------------
/

需求:请输出一个4行5列的星星()图案。
结果:
*
**
***
****
*****
/
class ForForDemo2{
public static void main(String [] args){
for (int x = 0;x < 5; x++){
for (int y = 0; y < x+1; y++ ){
System.out.print("
");
}
System.out.println();
}
}
}
--------------------------知识点3---------------------------------
/

九九乘法表
11=1
1
2=2 22=4
/
class ForForDemo3{
public static void main(String [] args){
for (int x = 1;x <= 9; x++){
for (int y = 1; y <= x; y++ ){
System.out.print(y+"
"+x+"="+(x
y));
/System.out.print("");
System.out.print(x);
System.out.print("=");
System.out.print(xy);/
System.out.print("\t");
}
System.out.println();
}
}
}
--------------------------知识点4---------------------------------
/*
switch语句格式:
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;

default:
语句体n+1;
break;
}
格式的解释:
switch:表示选择结构
表达式:这个地方的取值是限定的
byte,short,int,char
JDK5以后可以是枚举
JDK7以后可以是字符串
break 表示中断,可以结束switch语句。
default: 当所有的值都和表达式不匹配的时候,就执行defaule控制的
的语句。

	面试题:
	byte可以作为switch的表达式吗?yes
	long可以作为switch的表达式吗?no
	String可以作为switch的表达式吗?yes
	
	案例:键盘录入一个数据,根据数据,输出对应的星期
	
	分析:
		1.键盘录入,使用Scanner实现
		2.判断我们既可以使用if语句,也可以使用switch语句。
	
    注意:
		A.遇到做左大括号缩进一个tab的位置。
		B.关联不是很大的语句间空行。

*/
import java.util.Scanner;
class SwitchDemo{
public static void main(String [] args){
// 创建键盘录入对象
Scanner sc = new Scanner(System.in);
// 控制键盘录入数据
System.out.println(“请输入一个数据(1-7):”);
int week = sc.nextInt();
switch (week){
case 1:
System.out.println(“星期一”);
break;
case 2:
System.out.println(“星期二”);
break;
case 3:
System.out.println(“星期三”);
break;
case 4:
System.out.println(“星期四”);
break;
case 5:
System.out.println(“星期五”);
break;
case 6:
System.out.println(“星期六”);
break;
case 7:
System.out.println(“星期日”);
break;
default :
System.out.println(“您输入的有错误!”);
break;
}
}

}
--------------------------知识点6---------------------------------
/*
switch 语句的注意事项:
A:case后面只能是常量,不能是变量,而且,多个case后的值不能相同。
B:default可以省略但是不建议,因为他对不正常情况进行处理。
C:break可以省略,结果可能不正确,会出现
case穿透,建议不要省略。最后的break可以省略。
D:可以在任意位置,但是最好放在最后。
E:switch的结束条件:
遇到break;
执行到最后;
*/

import java.util.Scanner;
class SwitchDemo2 {
public static void main(String [] args){
// 创建键盘录入对象
Scanner sc = new Scanner(System.in);
// 控制键盘录入数据
System.out.println(“请输入一个数据(1-7):”);
int week = sc.nextInt();
switch (week){
case 1:
System.out.println(“星期一”);
break;
case 2:
System.out.println(“星期二”);
break;
case 3:
System.out.println(“星期三”);
break;
case 4:
System.out.println(“星期四”);
break;
case 5:
System.out.println(“星期五”);
break;
case 6:
System.out.println(“星期六”);
break;
case 7:
System.out.println(“星期日”);
break;
default :
System.out.println(“您输入的有错误!”);
break;
}
}

}
--------------------------知识点7---------------------------------
/*
模拟单项选择题。

分析:
    1.出一个选择题,然后供你选择
	2.键盘入录选择的数据。
	3.根据选择来给出你的选择结论。

*/
import java.util.Scanner;
class SwitchTest2{
public static void main(String [] args){
// 由于目前学习键盘没法入录一个‘A’,‘B’
// 使用65 ,66这样的代替
// 将来我们获取到这样的值后,强制转换成字符类型。

System.out.println("下面的几个人你最爱谁?");
System.out.println("65 林青霞");
System.out.println("66 张曼玉");
System.out.println("67 刘德华");
System.out.println("68 王力宏");

// 创建接受对象
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的选择:");
int choiceNumber = sc.nextInt();

// 进行switch选择判断
switch ((char)choiceNumber){
	case 'A':
		System.out.println("你最喜欢的人是林青霞");
		break;
	case 'B':
		System.out.println("你最喜欢的人是张曼玉");
		break;
	case 'C':
		System.out.println("你最喜欢的人是刘德华");
		break;
	case 'D':
		System.out.println("你最喜欢的人是王力宏");
		break;
	default:
	    System.out.println("输入错误!");
		break;
}

}
}
--------------------------知识点8---------------------------------
/*
根据你键盘录入的字符串,判断是否满足要求的,如果有就输出。
否则,提示错误。

String s = sc.nextLine();
if和switch的区别:
	if语句使用场景:
	针对结果是boolean类型的判断
	针对一个范围的判断
	针对几个常量值的判断
switch语句使用场景:
	针对几个常量值的判断

*/

import java.util.Scanner;
class SwitchTest3{
public static void main(String [] args){
// 创建键盘录入对象
Scanner sc = new Scanner(System.in);
// 接收键盘录入数据
System.out.println(“请输入字符串:”);
String word = sc.nextLine();

//switch语句判断
switch(word){
	case "abcd":
	System.out.println("输入正确");
	break;
	default:
	System.out.println("输入错误");
	break;
}	

}
}
--------------------------知识点9---------------------------------
/*
continue :继续

使用场景:
	循环中,离开此场景无意义。
	
测试:找到和break的区别:
	break:跳出单层循环
	continue:跳出一次循环,进入下次循环

*/

class ContinueDemo{
public static void main(String [] args){
for(int x=0;x<10;x++ ){
if(x==6){
//break;
continue;
}
System.out.println(x);
}
}
}
--------------------------知识点10---------------------------------
/*
控制跳转语句:
continue:继续
return:返回

	break:中断的意思
	使用场景:
		A.switch语句中
		B.循环语句中
			(循环语句中加入了if判断的情况)
		注意:离开的上面两个场景;毫无意义
	
	如何使用:
		1.跳转单层循环
		2.跳出多层循环
			要实现这个效果,就必须知道一个标签名。
			格式:
				标签名 :语句

*/

class BreakDemo{
public static void main(String [] args){
// 在 switch 或 loop 外部中断
// break;
for (int x=0;x<10;x++){
if (x ==3){
break;
}
System.out.println(“helloworld”);
}
System.out.println(“over”);
System.out.println("-----------------");

	wc:for(int x= 0;x<4;x++){
		nc:for(int y=0;y<3;y++){
			if(y == 2){
				break wc;
			}
			System.out.print("*");
		}
	System.out.println();
	}
}

}
--------------------------知识点11---------------------------------
/*
需求:小芳的妈妈每天给她2.5元钱,她都会存起来,但是,
每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
请问,经过多少天,小芳才可以存到100元钱。
/
class Test{
public static void main(String [] args){
float sum = 0;
int SuccessTime =1;
for(int day = 1;;day++){
sum += 2.5;
if(day%5==0){
sum = sum-6;
System.out.println(“第”+day+“天小芳花了6元!”);
}
if (sum >= 100){
SuccessTime = day;
System.out.println(“经过”+SuccessTime+“天小芳存到了100元钱!”);
break;
}
System.out.print(day);
System.out.print(" ");
System.out.println(sum);
}
}
}
--------------------------知识点12---------------------------------
/

需求:小芳的妈妈每天给她2.5元钱,她都会存起来,但是,
每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
请问,经过多少天,小芳才可以存到100元钱。

分析:
	A:小芳的妈妈每天给她2.5元钱
		double dayMoney = 2.5;
	B:她都会存起来
		double daySum = 0;
	C:从第一天开始存储
		int dayCount = 1;
	D:经过多少天,小芳才可以存到100元钱。
		double result = 100;
	E:这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
		说明要判断dayCount的值,如果对5整除就减去6元钱。
			daySum -= 6;
	  由此还隐含了一个问题,就是如果不是5的倍数天的话,钱要累加
			daySum += dayMoney;
	F:因为不知道是多少天,所以我用死循环,一旦超过100元我就退出循环。

*/
class Test2 {
public static void main(String[] args) {
//每天要存储的钱是2.5元
double dayMoney = 2.5;

	//存钱的初始化值是0
	double daySum = 0;
	
	//从第一天开始存储
	int dayCount = 1;
	
	//最终存储不小于100就不存储了
	int result = 100;
	
	//因为不知道是多少天,所以我用死循环,
	while(true) {
		//累加钱
		daySum += dayMoney;
		
		//一旦超过100元我就退出循环。
		if(daySum >= result) {
			System.out.println("共花了"+dayCount+"天存储了100元");
			break;
		}
		
		if(dayCount%5 == 0) {
			//花去6元钱
			daySum -= 6;
			System.out.println("第"+dayCount+"天花了6元钱");
		}
		
		//天数变化
		dayCount++;
	}
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值