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. 完整版的CAD技巧!3天轻松玩转CAD,零基础也能学会

    最近有很多小伙伴反应,CAD图纸学起来有点小困难,也许你还没能掌握技巧,CAD大神带你3天轻松玩转CAD,零基础也能快速学会. 一.看懂图纸是关键 CAD制图首先得让自己知道要绘制什么,如果心中对图纸 ...

  2. linux下 sort | uniq | wc | less 几个命令的基本用法

    sort -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法: -n :使用『纯数字』进行 ...

  3. flex布局开发

    flex布局开发 布局原理 flex时flexible Box的缩写,意为"弹性布局",用来为盒子模型提供最大的灵活性,任何一个容器都可以定位flex布局 [注意] 当我们为父盒子 ...

  4. ucoreOS_lab8 实验报告

    所有的实验报告将会在 Github 同步更新,更多内容请移步至Github:https://github.com/AngelKitty/review_the_national_post-graduat ...

  5. Python之Beautiful Soup 4使用实例

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库,它能够通过你喜欢的转换器实现惯用的文档导航.查找.修改文档的方式.Beautiful Soup 4 官方文档: ...

  6. .net4.0使用Dapper操作MySql

    准备使用Dapper操作MySql,由于电脑只有vs2010,所以需要Dapper和MySql组件支持.net 4.0.经过一番测试,终于弄出一个DEMO. 1.操作MySql需要用MySql.Dat ...

  7. window下操作jenkins查看页面的几种方式

    原文:https://blog.csdn.net/kennin19840715/article/details/78782505 前几天通过jenkins本机执行selenium cases, 发现浏 ...

  8. ORACLE基础之oracle锁(oracle lock mode)详解

    ORACLE里锁有以下几种模式: 0:none 1:null 空 2:Row-S 行共享(RS):共享表锁,sub share  3:Row-X 行独占(RX):用于行的修改,sub exclusiv ...

  9. JAVA 中 Map 与实体类相互转换的简单方法

    1. 在 pom.xml 中引入依赖包 <dependency> <groupId>com.alibaba</groupId> <artifactId> ...

  10. idea插件(mybatis框架下mapper接口快速跳转对应xml文件)亲测好用!

    我相信目前在绝大部分公司里,主要使用的框架是S(spring)S(spring MVC)M(mybatis),其中mybatis总体架构是编写mapper接口,框架扫描其对应的mapper.xml文件 ...