第二章 数据类型和运算符 (常识)

1、8种基本数据类型及其字节数 

 数据类型

关键字

字节数

数值型

整数型

byte

1

short

2

int

4

long

8

浮点型

float

4

double

8

布尔型

boolean

1(位)

字符型

char

2

2、i++和++i的异同之处

共同点:
        1、i++和++i都是变量自增1,都等价于i=i+1
        2、如果i++,++i是一条单独的语句,两者没有任何区别
        3、i++和++i的使用仅仅针对变量。 5++和++5会报错,因为5不是变量。

不同点:
       如果i++,++i不是一条单独的语句,他们就有区别
       1、 i++ :先运算后增1。如: 

int x=5;
int y=x++;
System.out.println("x="+x+", y="+y);
//以上代码运行后输出结果为:x=6, y=5

      2、++i : 先增1后运算。如:

int x=5;
int y=++x;
System.out.println("x="+x+", y="+y);
//以上代码运行后输出结果为:x=6, y=6

3、&和&&的区别和联系,|和||的区别和联系 

3.1 &和&&的联系(共同点):

        &和&&都可以用作逻辑与运算符,但是要看使用时的具体条件来决定。

操作数1&操作数2,操作数1&&操作数2,

表达式1&表达式2,表达式1&&表达式2,

情况1:当上述的操作数是boolean类型变量时,&和&&都可以用作逻辑与运算符。
情况2:当上述的表达式结果是boolean类型变量时,&和&&都可以用作逻辑与运算符。
表示逻辑与(and),当运算符两边的表达式的结果或操作数都为true时,整个运算结果才为true,否则,只要有一方为false,结果都为false。


3.2 &和&&的区别(不同点):


    (1)  &逻辑运算符称为逻辑与运算符,&&逻辑运算符称为短路与运算符,也可叫逻辑与运算符。
        对于&:无论任何情况,&两边的操作数或表达式都会参与计算。
        对于&&:当&&左边的操作数为false或左边表达式结果为false时,&&右边的操作数或表达式将不参与计算,此时最终结果都为false。
        综上所述,如果逻辑与运算的第一个操作数是false或第一个表达式的结果为false时,对于第二个操作数或表达式是否进行运算,对最终的结果没有影响,结果肯定是false。推介平时多使用&&,因为它效率更高些。
      (2)  &还可以用作位运算符。当&两边操作数或两边表达式的结果不是boolean类型时,&用于按位与运算符的操作。


3.3 |和||的区别和联系与&和&&的区别和联系类似

 

4、用最有效率的方法算出2乘以8等于多少

        使用位运算来实现效率最高。位运算符是对操作数以二进制比特位为单位进行操作和运算,操作数和结果都是整型数。对于位运算符“<<”, 是将一个数左移n位,就相当于乘以了2的n次方,那么,一个数乘以8只要将其左移3位即可,位运算cpu直接支持的,效率最高。所以,2乘以8等于几的最效率的方法是2 << 3。

5、基本数据类型的类型转换规则 

基本类型转换分为自动转换和强制转换。

        自动转换规则:

                容量小的数据类型可以自动转换成容量大的数据类型,也可以说低级自动向高级转换。这儿的容量指的不是字节数,而是指类型表述的范围。

        强制转换规则:高级变为低级需要强制转换。

        如何转换:

     (1)赋值运算符“=”右边的转换,先自动转换成表达式中级别最高的数据类型,再进行运算。

     (2)赋值运算符“=”两侧的转换,若左边级别>右边级别,会自动转换;若左边级别 == 右边级别,不用转换;若左边级别 < 右边级别,需强制转换。

    (3)可以将整型常量直接赋值给byte, short, char等类型变量,而不需要进行强制类型转换,前提是不超出其表述范围,否则必须进行强制转换。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值