day04-----------java 语言基础(基础语法)(传智视频)

/*
	switch语句格式:
		switch(表达式) {
			case 值1:
				语句体1;
				break;
			case 值2:
				语句体2;
				break;
			...
			default:
				语句体n+1;
				break;
		}
		
	格式的解释:
		switch:表示这是switch选择结构
		表达式:这个地方的取值是有限定的
			byte,short,int,char
			JDK5以后可以是枚举
			JDK7以后可以是字符串
		break:表示中断,结束的意思,可以控制switch语句的结束。
		default:当所有的值都和表达式不匹配的时候,就执行default控制的语句。其实它就相当于if语句的else。
	
	面试题:
		byte可以作为switch的表达式吗? (可以)
		long可以作为switch的表达式吗?  (可以)
		String可以作为switch的表达式吗? (可以)
		


输入
import java.util.Scanner;
Scanner s = new Scanner(System.in);
int a = s.nextInt();

String s = s.nextLine();

if语句和switch语句的区别?
		if语句:
			A:针对结果是boolean类型的判断
			B:针对一个范围的判断
			C:针对几个常量值的判断
		
		switch语句:
			针对几个常量值的判断
			
//求出1-100之间偶数和
		//方式2
		int sum3 = 0;
		for(int x=0; x<=100; x+=2) {
				sum3 += x;
		}	
	
		
如何获取一个数据的个,十,百呢?
		假设有个一个数据:153
		ge:	153%10 = 3
		shi: 153/10%10 = 5
		bai:153/10/10%10 = 1
		qian:x/10/10/10%10
		wan:  x/10/10/10/10%10
		...
			
while循环和for循环的区别?
    使用区别:如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用for循环。
    因为变量及早的从内存中消失,可以提高内存的使用效率。	
    
    其实还有一种场景的理解:
	        如果是一个范围的,用for循环非常明确。
		如果是不明确要做多少次,用while循环较为合适。
		举例:吃葡萄。		
		
两种最简单的死循环格式
		while(true){...}
		for(;;){...}
		
/*
	控制跳转语句:
		break:中断
		continue:继续
		return:返回
	
	break:中断的意思
	使用场景:
		A:switch语句中
		B:循环语句中。
			(循环语句中加入了if判断的情况)
		注意:离开上面的两个场景,无意义。
		
	如何使用呢?
		A:跳出单层循环
		B:跳出多层循环
			要想实现这个效果,就必须知道一个东西。带标签的语句。
			格式:
				标签名: 语句(只能有一个)
*/
		wc:for(int x=0; x<3; x++) {
			nc:for(int y=0; y<4; y++) {
				if(y == 2) {
					//break nc;
					break wc;
				}
				System.out.print("*");
			}
			System.out.println();
		}

/*
	需求:小芳的妈妈每天给她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元我就退出循环。
*/		
                double daysum=0.0;
		int day=0;
		while(true){
			daysum +=2.5;
			day++;
			if(daysum>=100){
				System.out.println("spend"+day+"day");
				break;
			}
			if(day%5==0){
				daysum -=6;
			}
		}


转载于:https://my.oschina.net/u/2356966/blog/592794

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值