JavaSE第三天

复习:
1.boolean : true,false
 案例:
    boolean b = false;
    if(b=true){}
2.算数运算符:
   + - * / %
   %  结果+- 由被除数决定的
   整数/0    异常
   非0的数/0.0   非0的小数/0   Infinity
   0/0.0  0.0/0  0.0/0.0     NaN
   
   保留小数:String.format(“%.2f”,3.4567)
             DecimalFormat("0.00")   df.format(3.456);
             int num = Integer.parseInt("234");

         BigDecimal   提供+ - * /方法

2 赋值运算符 :=  
     左边必须是变量,赋值方向从右到左

    强制转换,自动提升
    
    法则:有变量参与的运算,表达式结果最小int
      byte b = 1,b2 = 1;
      byte r = b+b2; //error   
      b+=b2;   b = b+b2->b = (byte)(b+b2)

 3 ++  --
 
 4.比较运算符:> < >= <= == !=      
    
    boolean b = 4>x>1   //error

 5. 逻辑运算符: &&(&)    ||(|)   !
    短路
    
 6. 位运算符:二进制运算(补码):原码,反码,补码

     &   |    ^   ~

进制:二进制  0b1010    八进制  023     十六进制:0x33ff

-----------------------------------

赋值运算符: +=   -=   *=  /=   %=   
    int i = 4;
    i += 5;   ->  i=i+5;


三元运算符
   A ? a : b    if(){}else{}

   结果的数据类型:和a,b相关

   String r2 = true?"a":"b";

   Object r =  true? "hello":23;

   Integer i = 23;
    
    double r3 = 3<9 ? 5:4.5;


控制台输入

        Scanner sc = new Scanner(System.in);
        
    String str = sc.next();
    int num = sc.nextInt();
    float f = sc.nextFloat();
    double d = sc.nextDouble();

-------------------------------------------
语句种类:
    赋值语句:x = 9;
    方法调用语句:System.out.print("hello");
                  Math.max(10,11);
    import和package语句
    判断 if,switch
    循环 for,while,do-while
    跳转语句:break,continue

1.import语句:
   作用:导入类
    格式:import java.util.*;    import java.util.Scanner;
   位置:class上边,package下边
   数量:多个
2.package:
   作用:管理类
   格式:package cn.tedu.demo;
   位置:第一条有效语句
   数量:至多一条

------------------------------------------------------
if 语句
 1.if(boolean){}
 2.if(boolean){}else{}
 3.if(boolean){}
   if(boolean){}
   ......
 
 4.if(boolean){}
   else if(boolean){}
   .......
   else{}

switch(){}
  (byte,short,int,char,String,Enum)
   case n:
    语句 ;break;可有可无,如果有,跳出switch语句
                               没有,继续向下执行,和n无关
    .........

   default:
        语句;
   
练习
1.接收键盘输入,如果为偶数打印输出

2.输入一个数字表示重量,
如果重量<=20,则每千克收费0.35元;
如果超过20千克不超过100千克的范围,则超过的部分按照每千克0.5元收费;
如果超过100千克,则超过的范围按照每千克0.8元收费。
计算输入的重量对应的总费用

1.接收 控制台输入的年和月份,输出该年该月有多少天
year%4==0&&year%100!=0||year%400==0闰年判断条件

2.控制台输入,两个整数,和运算符,输出结果

--------------------------------------------------
1.for(表达式1;表达式2;表达式3){
    语句体;
  }
循环原理:
表达式1完成初始化;表达式2判断条件,如果为true,执行与语句体;
表达式3(步长);执行表达式2,直到判断条件为false,跳出循环体

int sum = 0;
for(int i = 1;i<=10;i++){
    sum+=i;
}
System.out.println(sum);

2.while(boolean){
    循环体;
}
int sum = 0;
int i = 1;
while(i<=10){
    sum += i;
    i++;
}
3.do{
    循环体;
}while(boolean);

int sum = 0;
int i = 1;
do{
    sum+=i;
    i++;
}while(i<=10);

1. 求1-100以内所有的奇数的和 --- i = 1; i += 2;
2. 打印100以内能被3整除而不能被7整除的数字 --- 先获取3的倍数  int i = 0; i += 3;
3. 输入一个数字,输出这个数字是一个几位数
4. 输入一个数字,输出这个数字的所有的因数 --- 从1开始,逐个数字取余这个输入的数字,看是否能够整除
20:1 2 4 5 10 20
---------------------------------------------------
嵌套循环
for(int i= 1;i<=10;i++){
    for(int j= 1;j<=5;j++){
        System.out.print("hello");
    }
    
}

循环原理:外出执行一次,内层执行全部

******
******
******
******
******

*
**
***
练习:
九九乘法表
------------------------------------------------
跳转语句:
break:
break:可以用于switch和循环体中
      表示跳出循环体(switch语句体)
      break语句后的代码永远不能执行

continue:可以用于循环体中
     表示结束本次循环,开始新一次循环
         语句后的代码永远不能执行
------------------------------------------------
标号语句
out:for(int i = 1;i<=5;i++){
for(int j= 1;j<=4;j++){
    if(j==2){
        break out;
    }
    System.out.print(j+"\t");
}
System.out.println();
}

练习:

输出2-1000,所有的质数(素数)
求4的阶乘的和 4!+3!+2!+1

百钱百鸡 --- 3文钱1只公鸡,2文钱1只母鸡,1文钱3只小鸡;
100文钱如何买恰好100只鸡?

--- 先定义一个循环表示公鸡,嵌套一个循环表示母鸡,计算小鸡的个数,
根据各种鸡的个数来计算钱数是否为100

posted on 2020-08-02 17:53  Winer_Jiu  阅读(91)  评论(0编辑  收藏  举报

导航