变量的转换:
大的取值范围转小的取值范围:强类型转换,举例:double a=4.5;int b=(int)a;丢失精度。
小的取值范围转大的取值范围:直接转换。
Java中的选择结构:
if(条件表达式)
{
业务代码;
}else
{
业务代码;
}
条件表达式的返回值:一定是一个真假值。
选择结构也可以嵌套来使用。
练习1:
输入一个4位卡号,如果每一位的数字的和大于10,那么提示一等奖,
如果十位和个位相等提示特等奖,其他情况提示没有中奖。
练习2:
随机产生一个1-10的随机数字,如果 和用户输入的数字相等,那么提示您猜对了,
否则提示没有猜对。
练习3:
输入一个年份,判断它是否为润年。
switch(表达式)
{
case 表达式的值:
业务代码;
break;
case 表达式的值:
业务代码;
break;
default:
业务代码;
}
jdk1.6以前是不兼容switch 中表达式是字符串类型。
在取一定范围内的数据时一定要用if,其他情况都可以。
--------------------随机数-----------------------------------------
随机数的使用:Math.random(); 取[0,9)数字
Random a=new Random(种子);
int b=a.nextint(数字);
种子的作用:Java 通过自己内部的一个算法,把种子当成一个基数,随机产生结果,如果种子相等,那么结果一定相等,
至于种子产生什么数字,不一定,随机的,不一样的种子不一定产生不一样的数据。
----------------String 类型----------------------------------------
String 类型是一个引用类型,它会有一个指针来指向内存地址。
String 中的==和equal的区别:==号比较的是地址和值,equal 比较的是值;
String 中的常用方法
练习1:使用Math 生成一个随机的四位数字。判断如果这四个数字大于20,提示中奖了。
练习2:用户输入一个月份,然后程序自动输出它的季节.使用switch()
------------------------------------------------------------------
作业1:用户输入两个数字及四则运算符,然后输出结果。
作业2:课后第三题。
作业3:从键盘分别输入年、月、日,判断这一天是当年的第几天。
1)润年可以被4整除,但不可被100整除或可以被400整除
2)如1880年3月1号 ,1880为润年,2月有29天加上一月31天 ,结果是29+31+1=61
------------------------代码----------------------------------------------
System.out.println("-------请您输入你的成绩-------");
Scanner sc=new Scanner(System.in);
int number=sc.nextInt();
//String d=number>50?"大于50":"不大于50";
//System.out.println(d);
//三元运算符和if 判断有啥区别
/*if(number>50)
{
System.out.println("大于50");
}else
{
System.out.println("不大于50");
}*/
//根据考试分数,输出优良可差
/*if(number>90&&number<100)
{
System.out.println("优");
}
else if(number>80&&number<90)
{
System.out.println("良");
}
else if(number>70&&number<80)
{
System.out.println("可");
}else {
System.out.println("70以下都不及格");
}*/
if(number>90&&number<100)
{
System.out.println("优");
}
else
{
//都小于90的
if(number>80&&number<90)
{
System.out.println("80-90");
}
if(number>70&&number<80)
{
System.out.println("70-80");
}
}
统计天数
Scanner scan = new Scanner(System.in);
System.out.println("请输入year:");
int year = scan.nextInt();
System.out.println("请输入month:");
int month = scan.nextInt();
System.out.println("请输入day:");
int day = scan.nextInt();
//定义一个变量来保存总天数
int sumDays = 0;
switch(month){
case 12:
sumDays += 30;
case 11:
sumDays += 31;
case 10:
sumDays += 30;
case 9:
sumDays += 31;
case 8:
sumDays += 31;
case 7:
sumDays += 30;
case 6:
sumDays += 31;
case 5:
sumDays += 30;
case 4:
sumDays += 31;
case 3:
//sumDays += 28;
//判断year是否是闰年
if((year % 4 == 0 && year % 100 != 0 ) || year % 400 == 0){
sumDays += 29;
}else{
sumDays += 28;
}
case 2:
sumDays += 31;
case 1:
sumDays += day;
}
System.out.println(year + "年" + month + "月" + day + "日是当年的第" + sumDays + "天");