初窥Java之三

一、基本数据类型之浮点型

每个数据它自身都有一个默认的类型,如果直接打印小数,默认类型就为double类型;

float和double表示小数的精度不是特别的高,如果对于精确度要求非常的高,我们 都使用BigDecimal类型。

1、float(单精度)

申明数据类型(小数(单精度))

float f = 1.0; 编译报错,因为我们表面上看到时1.0,其实它是无限接近于1.0这个数据。那怎么解决呢? 在数据后面加一个F或者f。float f = 1.0f;告诉java,我1.0这个数据为float类型。

2、Double(双精度)

申明数据类型(小数(双精度))

double d = 1.2;

3、常见小数的表现形式

1.  直接写小数    如:3.2   4.4

2. 使用科学技术法:  3e2===3.0*10(2)    3e-2  3.0*10(-2),注意是3.0!!!

二、基本数据类型之字符类型(只能储存单个字符)

1、字符的默认值是:a,用十六进制来表示是:‘u0000

2、常见的形式:

1. 直接编写字符  'A'  '1'  '好'

2. 字符可以用数字(ASCII)来表示(了解): char a = 65

3. 字符可以用16进制来表示:语法格式  'uXXXX'   XXXX:16进制,如果不够4位用0来填充

三、基本数据类型之布尔类型(1位)

它只有2个值: true/false

怎么定义的呢? boolean flag = true;

在计算机底层它其实是用1或者0来表示的, 1表示true 0表示false

布尔类型使用场景一般都是在:选择结构  循环结构中

四、引用数据类型之字符串

1、语法格式:String str = hello world

2、字符串的+好问题: 它表示连接的意思,字符串和任意的数据都可以连接,得到的最终结果值还是字符串

五、基本数据值数据转换问题

byte    short    char    int    long    float     double

从左到右精度越来越高,它会自动隐式转换的  double d = 3;

从右到左精度越来越低,如果想要转换,必须进行强转

强转的格式:byte a = (byte)3.2;

注意: byte short  char int中,如果你输入一个数据在其范围中,不需要强转,它也是会自动隐式转换的。

六、表达式

表达式:就是由常量,变量,运算符,()组成的

研究,整个表达式应该用什么类型来接收最终的结果值--》答:应该用整个表达式中精 度最高的类型来接收

七、运算符

1运算符:

+   -   *  /(求商)  %(余数)

++  --(--和++一样)

注意:自增与自减它只能用于变量,不能用于常量

请把a++或者++a看成一个表达式

++在变量后面的时候,整个表达式的值,是变量自增之前的值

++在变量前面的时候,整个表达式的值,是变量自增之后的值

不管++在前还是在后,该变量都会自增1

2赋值运算:

+=: 累加   byte a+=2  就相当于  byte a = (byte)(a+2)

*=

/=

-=

%=

3比较运算符:

>  >=  == !=   <  <=

比较运算符,最终结果值为布尔类型

4逻辑运算符:

&   &&   |  ||  ^(异或)  !(逻辑非)

&与&&的区别:  

&它可以用于位运算,也可以用于逻辑运算,而&&只能用于逻辑运算

如果它们都用于逻辑运算表示那么&不具备短路行为,而&&具备短路行为, 所以以后做逻辑运算推荐使用&&,因为性能高

5三目运算(三元运算)

语法格式: X?Y:Z  如果X成立,则直接执行Y,否则执行Z  

X:必须是布尔类型的结果值

注意:如果Y与Z的类型一致,可以使用变量接收,否则不行

原文地址:https://www.cnblogs.com/limengkun/p/10556051.html