• JAVA的变量、数据类型和运算符


    2.1.1变量

    变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。在指令式语言中,变量通常是可变的;但在纯函数式语言(如Haskell)中,变量可能是不可变(immutable)的。在一些语言中,变量可能被明确为是能表示可变状态、具有存储空间的抽象(如在Java和Visual Basic中);但另外一些语言可能使用其它概念(如C的对象)来指称这种抽象,而不严格地定义“变量”的准确外延

    2.1.2数据类型

    1.Java的八大基本数据类型为:

    整型

    byte字节型1字节 8bit  最大存储数据量是255,存放的数据范围是-128~127之间

    short短整型2字节 16bit最大数据存储量是65536,数据范围是-32768~32767之间

    int整型4字节 32bit最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1

    long长整型8字节 64bit最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1

    浮点型

    float单精度4字节 32bit数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F

    double双精度8字节 64bit数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加

    字符类型

    char字符型用单引号

    布尔类型

    boolean布尔型true/false(只有真假两种结果)

    数据值域的知识说明:

    1.一个bit是计算机考研存储的最小的数据单位。即1位,只可能是0或1.

    2.一个byte由八个bit组成,即八位,可以表示256个整数值,又由于byte在Java中有符号之分(即正负数),所以范围位-128~127.

    3.一个char在Java中由两个byte组成,用来表示一个字符,即unicode编码,是无符号类型。

    4.int和float在Java中由4个byte组成。

    5.每个long或double型变量占用八个byte的存储空间。

    6.1T=1024G,1G=1024M,1M=1024K,1K=1024B

    小心得:

    1.程序中的整数默认都是int型,即在方法调用直接传入的一个具体的整数值,默认情况下是int型。

    2.值域小的的类型可以自动转化为值域大的。值域大的不能直接转化为值域小的,但是可以通过强制转化实现。

    eg:

       byte a=10;

    int

    i=a;

    (程序正常运行,输出的i为10)

    eg:int a=10;

    byte

    i=(byte)a;

    (程序正常运行,输出的i为10)

    若a的值超出了byte类型的上限或下限,可以输出值,但该值的数据会改变,改变规律如下:

    假设a为int型,b为byte型(其他情况可以类比!~)

    若a大于byte的上限值,则应减去其值域n次,直到最终的值落在-128~127之间,举个例子:int a=1000;

    byte

    b=(byte)a;//1000-256-256-256-256=-24

    (输出的b为-24)

    3.浮点型转化为整型是不是四舍五入,而是直接截去小数部分。如:

    double

    b=12.5;

    int

    i=(int)12.5;

    (输出值为12而不是13!)

    4.浮点型数字的科学表示方法:

    比如:1.2e+12f(表示1.2乘以10的12次幂)

    1e-21f(表示1乘以10的-21次幂)

    (2)对象数据类型(应用数据类型,类类型)

    所有用class,interface,abstract

    class定义的类;

    String是Java定义的一个类。

    String的数据存储方式和Java的基本数据类型是一致的。

    String的定义方式

    String

    str="abc";

    String

    str-new String();

    2.2.2运算符优先级和说明

  • 相关阅读:
    C++ 构造函数初始化列表
    虚函数
    thread 学习
    vim学习笔记
    Python重载比较运算符
    python使用插入法实现链表反转
    【好文转】Python中yield的理解与使用
    【转】Python中自定义可迭代对象
    linux安装python3.6.6和新建虚拟环境
    【转】Python 并行分布式框架 Celery
  • 原文地址:https://www.cnblogs.com/zhangisqiang/p/7182015.html
Copyright © 2020-2023  润新知