Day01

Java基础再次回顾:

java强制转换的思考;强制转换数据溢出后的结果怎么计算?(byte b=(byte)130  原反补码);

 

字符串参与运算:

System.out.println("hello"+'a'+1);//输出为helloa1

System.out.println('a'+1+"hello");//输出为98hello

总结如下:字符串数据和其他数据做+,结果是字符串类型;这里的+不是加法运算,而是字符串连接符

 

java常见的命名规则:

包:全部小写(单级包:zyy;多级包:com.baidu)

类或者接口:首字母大写(一个单词:Student;多个单词:HelloWorld)

方法或者变量:首字母小写(一个单词:name;多个单词:从第二个单词开始,每个单词首字母大写)

 

基本数据类型(四类八种):

整数:                                  占用字节数

                  byte                      1

              short                            2

                   int                                  4

                  long                                8

浮点数:

              float                              4

                   double                           8

字符:

                char                            2

布尔:

                    boolean            1

 

赋值运算符的面试题:

面试题: short s=1;s=s+1;

               short s=1;s+=1;

上面两个代码有没有问题呢?如果有,问题在哪儿呢?

第一个是有问题的,可能会损失精度(s+1过后就是int型,在输出为short型就会损失精度)

第二个是没有问题的,扩展的赋值运算符其实隐含了一个强制类型转换

s+=1;不是等价于s=s+1;二十等价于s=(s的数据类型)(s+1);

 

&&和&的区别在哪儿呢?同理,||和|的区别?

A:最终结果是一样的

B:&&具有短路效果,左边是flase,则右边不执行。

同理   ||具有短路效果,左边为true,则右边不执行。

 

位运算符的基本用法(了解就行)

Day01

Day01

Day01

Day01