Java编程基础——常量变量和数据类型

摘要:本文介绍了Java编程语言的常量变量和数据类型。

常量变量

常量的定义

一块内存中的数据存储空间,里面的数据不可以更改。

变量的定义

一块内存中的数据存储空间,因为里面的数据可以更改,所以称为变量。

变量的分类

局部变量:方法或语句块内部定义的变量,作用域是当前方法或当前语句块,需要在初始化时赋值,存在占内存中。

成员变量:方法外部或类的内部定义的变量,作用域是整个类,有默认值,存在堆内存中。

数据类型

说明

Java语言是一种强类型语言。通俗点说,在Java中存储的数据都是有类型的,而且必须在编译时就确定其类型。

基本类型变量:保存原始值,它代表的值就是数值本身。通过值传递进行赋值。

引用类型变量:保存引用值,指向内存空间的地址,代表了某个对象的引用,对象本身存放在这个引用值所表示的地址的位置。通过引用传递进行赋值。

基本数据类型

布尔型

boolean数据类型表示1位的信息,只有true和false两个取值,这种类型只作为一种标志来记录true/false情况。

默认值是false。

字符型

char类型是一个单一的16位Unicode字符,单引号括起来的单个字符表达,通常用16进制表示。

最小值是’\u0000’(即为0),最大值是’\uffff’(即为65,535)。可以当整数来用,它的每一个字符都对应一个数字。

字符常量指用单引号括起来的单个字符,如'a','A',请特别注意,字符的定界符是单引号,而非双引号。

除了以上所述形式的字符常量值之外,Java还允许使用一种特殊形式的字符常量值,这通常用于表示难以用一般字符来表示的字符,这种特殊形式的字符是以一个“\”开头的字符序列,称为转义字符。

Java中的常用转义字符见下图:

整数类型

byte

byte数据类型是8位的有符号的以二进制补码表示的整数,占1字节。

最小值是-128(-2^7),最大值是127(2^7-1),默认值是0。

short

short数据类型是16位的有符号的以二进制补码表示的整数,占2字节。

最小值是-32768(-2^15),最大值是32767(2^15-1),默认值是0。

int

int数据类型是32位的有符号的以二进制补码表示的整数,占3字节。

最小值是-2,147,483,648(-2^31),最大值是2,147,485,647(2^31-1),默认值是0。

long

long数据类型是64位的有符号的以二进制补码表示的整数,占4字节。

最小值是-9,223,372,036,854,775,808(-2^63),最大值是9,223,372,036,854,775,807(2^63-1),默认值是0L。

浮点类型

float

float数据类型是32位的单精度的符合IEEE 754标准的浮点数,占4字节。

默认值是0.0F。

double

double数据类型是64位的双精度的符合IEEE 754标准的浮点数,占8字节。

默认值是0.0D,浮点数的默认类型为double类型。

数据类型转换

字符型、整形、浮点型的数据在混合运算中相互转换,遵循以下规则:

◆ boolean类型不可以转换为其他的数据类型。

◆ 容量小的类型自动转换为容量大的类型,顺序为:

byte/short/char→int→long→float→double

byte/short/char之间不会相互转换,他们在计算时会首先转为int类型。

◆ 容量大的数据类型转为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出。

◆ 有多种类型的数据类型混合运算时,首先自动将所有的数据转换成容量最大的数据类型,然后在进行计算。

Java编程基础——常量变量和数据类型的更多相关文章

  1. Java入门——(1)Java编程基础

    Java入门--(1)Java编程基础 第二章 Java编程基础   JAVA 代码的基本格式: 修饰符 class 类名{ 程序代码 }   2.1关键字:赋予了特殊含义的单词.   2.2标识符: ...

  2. Java开发知识之Java编程基础

    Java开发知识之Java编程基础 一丶Java的基础语法 每个语言都有自己的语法规范.例如C++ 入口点是main. 我们按照特定格式编写即可. Java也不例外. Java程序的语法规范就是 Ja ...

  3. Java编程基础——标识符和关键字

    Java编程基础——标识符和关键字 摘要:本文主要介绍标识符和关键字. 标识符 是什么 Java语言中,为各种变量.方法.类和包等起的名字,统统称之为Java标识符. 命名规则 ◆ 应以字母.下划线. ...

  4. Java编程基础-面向对象(中)

    本章承接Java编程基础-面向对象(上)一文. 一.static关键字 在java中,定义了一个static关键字,它用于修饰类的成员,如成员变量.成员方法以及代码块等,被static修饰的成员具备一 ...

  5. Java编程基础——流程控制

    Java编程基础——流程控制 摘要:本文主要介绍Java编程中的流程控制语句. 分类 流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下三种: 顺序结构:从上到下依次执行每条语句操作 ...

  6. Java编程基础——运算符和进制

    Java编程基础——运算符和进制 摘要:本文主要介绍运算符和进制的基本知识. 说明 分类 Java语言支持如下运算符: ◆ 算术运算符:++,--,+,-,*,/,%. ◆ 赋值运算符:=,+=,-= ...

  7. Java编程基础——数组和二维数组

    Java编程基础——数组和二维数组 摘要:本文主要对数组和二维数组进行简要介绍. 数组 定义 数组可以理解成保存一组数的容器,而变量可以理解为保存一个数的容器. 数组是一种引用类型,用于保存一组相同类 ...

  8. java编程基础二进制

    0.java编程基础 01.二进制(原码,反码,补码) 02.位运算 03.移位运算符 二进制 原码,反码,补码 1.基本概念 二进制是逢2进位的进位制,0,1是基本算符. 现在的电子计算机技术全部使 ...

  9. Java基础-4变量与数据类型

    变量:变量是Java程序中的一个基本存储单元.变量是一个标识符.类型及一个可选初始值的组合定义.所有的变量都有一个作用域,即变量在某一区域有效. 基本的变量声明方式如下: int a; float b ...

随机推荐

  1. 进度更新---Responsive Web Design Certification (300 hours)

    进度更新---Responsive Web Design Certification (300 hours) 已经完成: basic html and html5 basic css applied ...

  2. iOS中进程与线程(多线程、主次线程)

    一.什么是线程?什么是多线程?              线程是用来执行任务的,线程彻底执行完任务A才能去执行任务B.为了同时执行两个任务,产生了多线程. 例子: 打开一个音乐软件,用户开辟一个线程A ...

  3. ABP进阶教程7 - 功能按钮

    点这里进入ABP进阶教程目录 下载插件 打开Datatables官网(https://datatables.net/download/) 勾选Extensions/Buttons,下载插件,复制到JD ...

  4. Troubleshooting ORA-1628 - max # extents (32765) reached for rollback segment <SEGMENT_NAME> (Doc ID 1580182.1)

    Troubleshooting ORA-1628 - max # extents (32765) reached for rollback segment <SEGMENT_NAME> ( ...

  5. Centos7安装配置----1配置网络

    1.下载镜像安装,选择的是最小安装,设置root用户密码 (此处省略其中步骤,直到安装成功) 2.安装完成后重启,输入用户名密码进入系统 由于此时未配置网络,所以网卡什么的均未获取ip联网 输入ip ...

  6. php实现图片下载

    download.php下载代码 <?php //获取要下载的文件名 $filename = $_GET['filename']; //设置头信息 header('Content-Disposi ...

  7. eclipse的“sun.misc.BASE64Encoder”问题解决

    新建一个AndroidHello工程,编译运行,出现问题如下: 编辑/Applications/Eclipse.app/Contents/Eclipse/eclipse.ini文件,加入 -vm /L ...

  8. 七,专著研读(Logistic回归)

    七,专著研读(Logistic回归) 分类:k-近邻算法,决策树,朴素贝叶斯,Logistic回归,支持向量机,AdaBoost算法. 运用 k-近邻算法,使用距离计算来实现分类 决策树,构建直观的树 ...

  9. RAID几种方式

    RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失 ...

  10. django DeleteView

    DeleteView from django.urls import reverse, reverse_lazy from django.contrib.auth.mixins import Logi ...