Java中的小数运算是不精确的
case的值是一个确定的值,即字面量:常量
如果代码执行到没有写break的case块,执行完后将直接进入下一个case块执行代码(而且不会进行任何匹配),直到遇到break才跳出分支,这就是switch的穿透性。
举例
public class SwitchDemo3 {
public static void main(String[] args) {
int month=7;
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println(month+"月的天数是:31");
break;
case 2:
System.out.println(month+"月的天数是28");
break;
case 4:
case 6:
case 9:
case 11:
System.out.println(month+"月的天数是30");
break;
default:
System.out.println("数据有误");
}
}
}
循环结构
for循环
System.out.println();//自带换行 System.out.print();//输出没有换行 它自身相当于一个换行for循环案例1:求水仙花数
public class ForDemo2 {
public static void main(String[] args) {
//求100-999水仙花数,以及水仙花数的个数
int count=0;
for(int i=100;i<1000;i++)
{
int ge=i%10;
int shi=i/10%10;
int bai=i/100%10;
if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){
System.out.println(i+"t");//转义字符
count++;}
}
System.out.println("水仙花的个数是:"+count);
}
}
while循环
while循环案例
世界最高山峰是珠穆朗玛峰(8848.86米=8848860毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问,折叠多少次,可以折成珠穆朗玛峰的高度。
public class WhileDemo1 {
public static void main(String[] args) {
double i = 0.1;
int count = 0;
while (i < 8848860) {
i *= 2;
count++;
}
System.out.println("纸张折叠厚度:"+count);
System.out.println("纸张最终厚度:"+i);
}
}
do-while循环
无限循环(死循环)
跳转关键字:break、continue
public static void main(String[] args) {
//目标:学会使用Java提供的类随机数
Random r=new Random();
for (int i=0;i<10;i++) {//输出0-9之间的随机数
int data=r.nextInt(10);
System.out.println(data);
}
System.out.println("-----------------------------");
//输出1-10之间的随机数
int data=r.nextInt(10)+1;
System.out.println(data);
}
猜数游戏
public static void main(String[] args) {
Random r=new Random();
//随机一个幸运号码1-100之间
int lucknumber=r.nextInt(100)+1;
int a;
Scanner sc=new Scanner(System.in);
do {
System.out.println("请输入一个数:");
a=sc.nextInt();
if(a>lucknumber)
System.out.println("大了");
if(a


