JAVA程序设计基础(第6版)/陈国君 节选

第3章Java语言基础

本章主要内容:

 数据类型;

 变量;

 基本类型变量;

 数据类型的转换规则;

 从键盘输入数据的语句格式;

 运算符。

本章主要介绍编写Java程序必须掌握的若干语言基础知识,包括数据类型、变量、常量、表达式等。掌握这些基础知识,是编写正确Java程序的前提条件。

3.1数据类型

程序在执行的过程中,需要对数据进行运算,也需要存储数据。这些数据可能是由使用者输入的,也可能是从文件中取得的,甚至是由网络上得到的。在程序运行的过程中,这些数据通过变量存储在内存中,以便程序随时取用。

数据存储在内存的一块空间中,为了取得数据,必须知道这块内存空间的位置,为了方便使用,程序设计语言用变量名来代表该数据存储空间的位置。将数据指定给变量,就是将数据存储到对应的内存空间; 调用变量,就是将对应的内存空间中的数据取出来使用。

一个变量代表一个内存空间,数据就存储在这个空间中,使用变量名来取得数据非常方便,然而由于数据在存储时所需要的内存容量各不相同,不同的数据就必须要分配不同大小的内存空间来存储,因此在Java语言中对不同的数据用不同的数据类型来区分。

在程序设计中,数据是程序的必要组成部分,也是程序处理的对象。不同的数据有不同的数据类型,不同的数据类型有不同的数据结构、不同的存储方式,并且参与的运算也不相同。通常计算机语言将数据按其性质进行分类,每一类称为一种数据类型(data type)。数据类型定义了数据的性质、取值范围、存储方式以及对数据所能进行的运算和操作。程序中的每一个数据都属于一种类型,定义了数据的类型也就相应决定了数据的性质以及对数据进行的操作,同时数据也受到类型的保护,确保对数据不进行非法操作。

Java语言中的数据类型分为两大类: 一类是基本数据类型(primitive types); 另一类是引用数据类型(reference types),简称引用类型。基本数据类型是由程序设计语言系统所定义、不可再分的数据类型。每种基本数据类型的数据所占内存的大小是固定的,与软硬件环境无关。基本数据类型在内存中存放的是数据值本身。引用数据类型在内存中存放的是指向该数据的地址,不是数据值本身,它往往由多个基本数据类型组成,因此,对引用数据类型的应用称为对象引用,引用数据类型也被称为复合数据类型,在有的程序设计语言中称为指针。

基本数据类型有整型、浮点型、逻辑型和字符型; 引用数据类型包括类、数组和接口等。本节只介绍基本数据类型,引用数据类型在5.1节中再进行介绍。

Java语言的数据类型实际上都是用类实现的,即引用对象的使用方式,同时Java语言也提供了类似C语言中简单类型的使用方式,即声明类型的变量。

Java语言定义了4类共8种基本类型,其中有4种整型、2种浮点型、1种布尔型和1种字符型,它们的分类及关键字如下。

 整型: byte,short,int,long。

 浮点型: float,double。

 布尔型: boolean。

 字符型: char。

1. 整型

整数有正整数、零、负整数,其含义与数学中的含义相同。Java语言的整数有三种进制的表示形式。

 十进制: 用多个0~9的数字表示,如123和-100,其首位不能为0。

 八进制: 以0开头,后跟多个0~7的数字,如0123。

 十六进制: 以0x或0X开头,后跟多个0~9的数字或a~f的小写字母或A~F的大写字母,a~f或A~F均表示值10~15,如0X123E。

Java语言定义了4种表示整数的类型: 字节型(byte)、短整型(short)、整型(int)、长整型(long)。每种整型的数据都是带符号位的。Java语言的每种数据类型都对应—个默认的数值,使得这种数据类型变量的取值总是确定的,体现了其安全性。整型类型如表3.1所示。

表3.1Java语言的整数类型

类型

数据位

范围

byte(字节型)

8

-128~127,即-27~27-1

short(短整型)

16

-32 768~32 767,即-215~215-1

int(整型)

32

-2 147 483 648~2 147 483 647,即-231~231-1

long(长整型)

64

-9 223 372 036 854 775 808~9 223 372 036 854 775 807,即-263~263-1

一个整数隐含为整型(int型)。当要将一个整数强制表示为长整数时,需在后面加字母l或L。所以若声明long型变量的值超过int型的取值范围时,如果数的后面不加l或L,系统会认是int型而出错。

2. 浮点型

Java语言用浮点型表示数学中的实数(浮点数),也就是既有整数部分又有小数部分的数。浮点数有两种表示方式。

 标准计数法: 由整数部分、小数点和小数部分构成,如3.0,3.1415等。

 科学计数法: 由十进制整数、小数点、小数和指数部分构成,指数部分由字母E或e跟上带正负号的整数表示,如123.45可表示为1.2345E+2。

浮点数用于需要小数位精确度高的计算。例如,计算平方根或三角函数等,都会产生浮点型的值。Java语言的浮点型有单精度浮点(float)和双精度浮点(double)两种,如表3.2所示。

java程序设计陈国君_《JAVA程序设计基础(第6版)/陈国君》【价格 目录 书评 正版】_中国图书网...相关推荐

  1. 应用回归分析第五版电子书_《应用回归分析-(第5版)》【价格 目录 书评 正版】_中国图书网...

    目录 第1章回归分析概述 11变量间的统计关系 12回归方程与回归名称的由来 13回归分析的主要内容及其一般模型 14建立实际问题回归模型的过程 15回归分析应用与发展述评 思考与练习 第2 ...

  2. python人民邮电出版社_《人民邮电出版社PYTHON数据分析(第2版)》【价格 目录 书评 正版】_中国图书网...

    第 1章 Python程序库入门1 1.1 安装Python 3 3 1.1.1 安装数据分析程序库 3 1.1.2 Linux平台或Mac OS X平台 3 1.1.3 Windows平台 4 1. ...

  3. 计算机网络实验教程钱德沛_《计算机网络实验教程-第2版》【价格 目录 书评 正版】_中国图书网...

    实验一 网络实验入门 1 实验内容 2 实验环境及设备简介 3 网线的制作 4 交换机和路由器的基本配置 5 报文分析软件介绍 6 简单局域网组建实验 7 基于地址转换的组网实验 预习报告 实验二 数 ...

  4. python语言程序设计嵩天-Python语言程序设计基础(第2版)嵩天课后答案

    嵩天.礼欣.黄天羽Python语言程序设计基础(第2版)习题答案本书提出了以理解和运用计算生态为目标的Python语言教学思想,在系统讲解Python语言语法的同时介绍了从数据理解到图像处理的14个P ...

  5. java程序设计案例教程 钱银中_《Java程序设计案例教程》【价格 目录 书评 正版】_中国图书网...

    出版说明 前言 第1章 概述 1.1 Java语言的发展历史 1.2 Java语言的特点 1.3 Java虚拟机 1.4 Java的应用 1.5 Java开发环境的建立 1.6 编辑.编译和运行Jav ...

  6. 编写python程序、计算账户余额_《计算机科学丛书PYTHON程序设计(原书第2版)/(美])凯.S.霍斯特曼》【价格 目录 书评 正版】_中国图书网...

    出版者的话 译者序 前言 第1章 概述 1 1.1 计算机程序 1 1.2 深入剖析计算机 2 1.3 Python编程语言 4 1.4 熟悉编程环境 5 1.5 分析**个程序 9 1.6 错误 1 ...

  7. python高等教育教材_《全国高等职业教育“十三五”规划教材PYTHON程序设计/赵增敏》【价格 目录 书评 正版】_中国图书网...

    第1章 Python编程基础1 1.1 Python语言概述1 1.1.1 Python语言的发展1 1.1.2 Python语言的特点2 1.1.3 Python语言的应用2 1.2 搭建Pytho ...

  8. python案例教程钱毅湘_《高等学校通识教育系列教材Python案例教程/钱毅湘》【价格 目录 书评 正版】_中国图书网...

    目录 第1章Python语言基础 1.1知识要点 1.1.1程序设计概述 1.1.2Python语言概述 1.1.3Python程序的格式框架 1.1.4常量和变量 1.1.5Python数据类型 1 ...

  9. maya python 游戏与影视编程指南_《Maya Python游戏与影视编程指南》【价格 目录 书评 正版】_中国图书网...

    致谢 xi引言:欢迎使用maya python xii第 1 部分 python和maya的基础知识 1第 1 章 maya 命令引擎和用户界面 21.1 与maya 进行交互 3 maya 嵌入式语 ...

最新文章

  1. python包NiBabel对医学影像文件格式进行读写:python包NiBabel简介集示例
  2. 文件夹目录结构导出工具及下载
  3. Python对函数求偏导数
  4. UNIX再学习 -- 函数 fork 和 vfork
  5. 八皇后问题---回溯
  6. opencv 在debian6.0下安装
  7. java http响应头,java – HTTP响应标头内容处理附件
  8. Web Application Framework
  9. matplotlib坐标设置(笔记二)
  10. 谷歌浏览器安装apizza
  11. Java微服务架构图(仅供参考,不一定适用)
  12. 用PS设计曲线四分环
  13. 利用Dreamweaver模板批量制作网页
  14. OpenCV基础入门【C++及python语言】
  15. Java IDEA的使用
  16. Innovus/ICC2在命令行窗口打开GUI界面的命令
  17. 在mt4模拟黄金的两个主要止损方法
  18. Sina微博开放API代理设置
  19. Vue-vben-admin Vue3+TS Axios的封装源码分析
  20. API网关Kong(三):功能梳理和插件使用-基本使用过程

热门文章

  1. 优酷播放的html代码,在网页里面嵌入播放优酷视频的js代码
  2. 小米有品众筹上线新品 获得iF2019设计奖的洁面仪众筹价199元
  3. 根据后端返回的文件流下载文件
  4. 英文科技论文的撰写方法
  5. 基于知识图谱的古诗词推荐(python+爬虫+mysql+neo4j)(二)
  6. Vue修改自带组件el-input样式
  7. IP-Guard能否限制PC端微信登录?
  8. 旗舰手机正在向技术“深水区”挺进
  9. Qt编写自定义控件71-圆弧进度条
  10. c Java 混合_Java和C语言混合编译