那 java学习day3

先吐槽一句今天作业量好多。。。。

让我康康今天过了哪些内容

一、进制转换

进制前提应该是整数

0b开头是二进制   0开头是八进制 0x开头是十六进制。

科学计数法   e表示10  e2 表示10^2     e-2表示10^-2

二、转义字符

\b 光标退一格  \n换行  \r 光标到行首    \t 表面上看是空格   实际上是八个空格   一个汉字占2个空格,一个字母占1个空

三、拓展赋值运算符中优缺点

+=  -=  *=  /=  %=

优点 提高执行效率 自动做强制类型转换

缺点 不直观

四、逻辑运算符^

 相同为false  不同为true

例子:true^false   是不同的  结果true

    true^true   是相同的  结果是false

  false^false  是相同的  false

五、条件运算符  ?  :

这个我老是记成   !:

所以写一下加深自己印象。。。。。。。

六、位运算符  我觉得这个是重点  虽然不重要  不过很难记

位运算符
  所有的 操作数先转为二进制的形式参与运算,再把结果转为十进制的形式

& :同一位置的两个数,一个0就是0,两个都1才是1

| :同一位置的两个数,一个为1就是1,两个都为0才是0

^ :同一位置的两个数  相同为0,不同为1

位移运算符

右移:>> 二进制的操作数,向右移动第二个操作数的位数,分水岭右侧的结果不要,只保留左侧,得到的结果转为十进制
   纯计算的话    -->第一个操作数/2的第二个操作数次方       num1/(2^num2)

左移:<< 二进制的操作数,向左移动第二个操作数的位数,空余的位置补0,得到的结果转为十进制
 纯计算的话  -->第一个操作数*2的第二个操作数次方            num1*(2^num2)  这样写就直观明了了

七   Scanner类

next() 接收字符串  结束功能:enter,不会接收enter
     从有效字符开始接收,遇到空格,tab不接受了,但是必须遇到enter结束功能
    nextLine()  只要没有换行,都能接收   遇到enter结束功能,接收enter
    nextInt()   接数字
    nextDouble()....  接小数

.close()  关了之后重开也没用~

处理enter直接出结果问题可以塞一个   没有变量赋值的  。nextLine();

八  random类

引用.nextInt(max-min+1)+min

 

九  switch  这个定制判断挺有意思的

switch(表达式){
     case 值1:
        语句体1;
      break;
     case 值2:
        语句体2;
       break;
     ....
     default:
        语句体n;
      break;
  }

一     没有break会发生case穿透  就是从没有break的地方  不核对下面的case条件  直接执行下面所有的语句体3 语句体4 语句体5.。。。。

二  default与 else作用一致   以上case都不满足条件,执行default中的语句体

int season =scan.nextInt();//季节
  season=season/3;
  switch(season){
   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 0:
   System.out.println("冬天");
   break;
  }
  

猜你喜欢

转载自www.cnblogs.com/haixing02/p/11285468.html