第四课 数据类型

来源:互联网 发布:淘宝采集api 编辑:程序博客网 时间:2024/04/28 05:01

第四课  数据类型

数据类型实际上就是一块内存空间,它可以存储一个特定类型的值。在JAVA中的数据类型与其它语言不同。因为,JAVA严格规定每个数据类型的大小,而且不允许任意更换变量的数据类型。也就是说如果A变量我们声明为整数类型后,就不能再将A变量改为其它类型,而且所占的空间就是32位,无法更改,所以在JAVA中没有sizeof运算符来获取某一个变量占用的内存空间大小。下面列出了JAVA的数据类型:
类型        内容        默认值        内存空间大小        取值范围
boolean        true/false        false        16位        true或false
char        Uncode        /u0000        16位        /u0000-----/uFFFF
byte        整数        0        8位        -128----+127
short        整数        0        16位        -32768--+32767
int        整数        0        32位        -2147483648---+2147483647
long        整数        0          64位        -9223372036854775808
                                --+9223372036854775807
float          浮点        0.0          32位        ±3.40282347E+38---
                                ±1.40239846E-45
double        浮点        0.0          64位          ±1.79769313486231570E+308---
                                ±4.94065645841246544E-324
  我们在定义数据类型时一定要考虑一下数据范围,尽量减少内存的浪费。
1、        整数型:JAVA定义了四种整数型,即字节型(byte),短整型(short),整型(int),长整型(long)。在JAVA中没有无符号型,这个有区别于C语言,也就是说所有的数都为有符号数。
2、        浮点型:这也就是平时所说的实数,其中单精度数(float)占4个字节,但值很大或很小时就不是很精确了。双精度数占8个字节,当需要保持多次反复迭代的计算的精确性时或操作值很大时,是最好的选择了。
下面我们举一个双精度数计算机圆面积的例子:
//compute the area of a circle
public class Area{
        public static void main(String args[]){
                double pi,r,a;
                r=0.3;//半径
                pi=3.1416;
                a=pi*r*r;//面积
                System.out.println("面积为:"+a);
        }
}
3、        字符型:这个于C语言不同,在C语言中占8位,而JAVA中由于使用的是unicode,所以占16位(Unicode定义的国际化的字符集能表示迄今为止人类语言的所有字符集)
我们还是举个例子说明一下字符型数据的使用:
public class CharDemo{
        public static void main(String args[]){
                char ch1,ch2;
                ch1=65;
                ch2='B';
                System.out.print("ch1 and ch2");
                System.out.println(ch1+"  "+ch2);
        }
}

其实从这里面可以看出,ASCII中的字符集占了Unicode中的前127个字符,所以ASCII中的技巧这里面一样用。
比如下面这个例子:
public class CharDemo{
        public static void main(String args[]){
                char ch1,ch2;
                ch1=65;
                ch2='B';
    ch1++;
    ch2--;
                System.out.println(ch1);
                System.out.println(ch2);
        }
}
4、        布尔型:也就是我们所说的真或假,但要注意由于本身就是逻辑值了,所以在条件语句中没有必要再写上类似于b=true的话了。
下面我们还是举个例子吧:
public class BoolTest{
public static void main(String args[]){
        boolean y;
        y=false;
        System.out.println("y is"+y);
        y=true;
        if(y){
                System.out.println("y is true");
        }
        System.out.println("10>9?"+(10>9));
}
}