江西广告网
标题:
JAVA入门教程:数据类型
[打印本页]
作者:
一壶乡愁
时间:
2008-12-27 17:41
标题:
JAVA入门教程:数据类型
§ 2.1数 据 类 型 数 据 类 型 指 明 了 变 量 或 表 达 式 的 状 态 和 行 为 。 Java的 数 据 类 型 如 下 所 示 : Java不 支 持 C、 C 中 的 指 针 类 型、结 构 体 类 型 和 共 用 体 类 型。 本 章 我 们 主 要 介 绍 简 单 类 型 。 § 2.2常 量 与 变 量 一 、 常 量 Java中 的 常 量 值 是 用 文 字 串 表 示 的 ,它 区 分 为 不 同 的 类 型 ,如 整 型 常 量 123,实 型 常 量 1.23,字 符 常 量 ‘ a’ ,布 尔 常 量 true、 false以 及 字 符 串 常 量 "This is a constant string."。 与 C、 C 不 同 ,Java中 不 能 通 过 #define命 令 把 一 个 标 识 符 定 义 为 常 量 ,而 是 用 关 键 字 final来 实 现 ,如 final double PI=3.14159( 有 关 final的 用 法 见 [6.2.3])。 二 、 变 量 变 量 是 Java程 序 中 的 基 本 存 储 单 元 ,它 的 定 义 包 括 变 量 名 、 变 量 类 型 和 作 用 域 几 个 部 分 。 ① 变 量 名 是 一 个 合 法 的 标 识 符 ,它 是 字 母 、 数 字 、 下 划 线 或 美 元 符 "$ "的 序 列 ,Java对 变 量 名 区 分 大 小 写 ,变 量 名 不 能 以 数 字 开 头 ,而 且 不 能 为 保 留 字 。 合 法 的 变 量 名 如 :myName、 value-1、 dollar$ 等 。 非 法 的 变 量 名 如 :2mail、 room#、 class (保 留 字 )等 ,变 量 名 应 具 有 一 定 的 含 义 ,以 增 加 程 序 的 可 读 性 。 ② 变 量 类 型 可 以 为 上 面 所 说 的 任 意 一 种 数 据 类 型 。 ③ 变 量 的 作 用 域 指 明 可 访 问 该 变 量 的 一 段 代 码 。 声 明 一 个 变 量 的 同 时 也 就 指 明 了 变 量 的 作 用 域 。 按 作 用 域 来 分 ,变 量 可 以 有 下 面 几 种 :局 部 变 量 、 类 变 量 、方 法 参 数 、 例 外 处 理 参 数 。 局 部 变 量 在 方 法 或 方 法 的 一 块 代 码 中 声 明 ,它 的 作 用 域 为 它 所 在 的 代 码 块 (整 个 方 法 或 方 法 中 的 某 块 代 码 )。 类 变 量 在 类 中 声 明 ,而 不 是 在 类 的 某 个 方 法 中 声 明 ,它 的 作 用 域 是 整 个 类 。 方 法 参 数 传 递 给 方 法 ,它 的 作 用 域 就 是 这 个 方 法 。 例 外 处 理 参 数 传 递 给 例 外 处 理 代 码 ,它 的 作 用 域 就 是 例 外 处 理 部 分 。 在 一 个 确 定 的 域 中 ,变 量 名 应 该 是 唯 一 的 。 通 常 ,一 个 域 用 大 括 号 {}来 划 定 。 有 关 类 变 量 、 参 数 传 递 以 及 例 外 处 理 将 分 别 在 [6.7.1]、 [6.2 .4]和 第 八 章 中 讲 述。 ④ 变 量 的 声 明 格 式 为 : type identifier[=value][,identifier[=value]… ]; 例 如 : int a, b, c; double d1, d2=0.0; 其 中 ,多 个 变 量 间 用 逗 号 隔 开 ,d2=0.0对 实 型 变 量 d2赋 初 值 0.0, 只 有 局 部 变 量 和 类 变 量 是 可 以 这 样 赋 初 值 的 ,而 方 法 参 数 和 例 外 处 理 参 数 的 变 量 值 是 由 调 用 者 给 出 的 。 § 2.3整 型 数 据 一 、 整 型 常 量 : 与 C,C 相 同 ,Java的 整 常 数 有 三 种 形 式 : ① 十 进 制 整 数 ,如 123,-456,0 ② 八 进 制 整 数 ,以 0开 头 ,如 0123表 示 十 进 制 数 83,-011表 示 十 进 制 数 -9。 ③ 十 六 进 制 整 数 ,以 0x或 0X开 头 ,如 0x123表 示 十 进 制 数 291,-0X12 表 示 十 进 制 数 -18。 整 型 常 量 在 机 器 中 占 32位 ,具 有 int型 的 值 ,对 于 long型 值 ,则 要 在 数 字 后 加 L或 l,如 123L表 示 一 个 长 整 数 ,它 在 机 器 中 占 64位 。 二 、 整 型 变 量 : 整 型 变 量 的 类 型 有 byte、 short、 int、 long四 种 。 下 表 列 出 各 类 型 所 在 内 存 的 位 数 和 其 表 示 范 围 。 (未 完 待 续 ) int类 型 是 最 常 使 用 的 一 种 整 数 类 型 。 它 所 表 示 的 数 据 范 围 足 够 大 ,而 且 适 合 于 32位 、 64位 处 理 器 。 但 对 于 大 型 计 算 ,常 会 遇 到 很 大 的 整 数 ,超 出 int类 型 所 表 示 的 范 围 ,这 时 要 使 用 long类 型 。 由 于 不 同 的 机 器 对 于 多 字 节 数 据 的 存 储 方 式 不 同 ,可 能 是 从 低 字 节 向 高 字 节 存 储 ,也 可 能 是 从 高 字 节 向 低 字 节 存 储 ,这 样 ,在 分 析 网 络 协 议 或 文 件 格 式 时 ,为 了 解 决 不 同 机 器 上 的 字 节 存 储 顺 序 问 题 ,用 byte类 型 来 表 示 数 据 是 合 适 的 。 而 通 常 情 况 下 ,由 于 其 表 示 的 数 据 范 围 很 小 ,容 易 造 成 溢 出 ,应 避 免 使 用 。 short类 型 则 很 少 使 用 ,它 限 制 数 据 的 存 储 为 先 高 字 节 ,后 低 字 节 ,这 样 在 某 些 机 器 中 会 出 错 。 三 、 整 型 变 量 的 定 义 ,如 : byte b; //指定变量b为byte型 short s; //指定变量s为short型 int i; //指定变量i为int型 long l; //指定变量l为long型 § 2.4浮 点 型 (实 型 )数 据 一 、 实 型 常 量 与 C,C 相 同 ,Java的 实 常 数 有 两 种 表 示 形 式 : ① 十 进 制 数 形 式 ,由 数 字 和 小 数 点 组 成 ,且 必 须 有 小 数 点 ,如 0.123, .123, 123.,123.0 ② 科 学 计 数 法 形 式 。 如 :123e3或 123E3,其 中 e或 E之 前 必 须 有 数 字 ,且 e或 E后 面 的 指 数 必 须 为 整 数 。 实 常 数 在 机 器 中 占 64位 ,具 有 double型 的 值 。 对 于 float型 的 值 ,则 要 在 数 字 后 加 f或 F,如 12.3F,它 在 机 器 中 占 32位 ,且 表 示 精 度 较 低 。 二 、 实 型 变 量 实 型 变 量 的 类 型 有 float和 double两 种 ,下 表 列 出 这 两 种 类 型 所 占 内 存 的 位 数 和 其 表 示 范 围 。 数据类型 所占位数 数的范围 float 32 3.4e-038~3.4e 038 double 64 1.7e-308~1.7e 308 双 精 度 类 型 double比 单 精 度 类 型 float具 有 更 高 的 精 度 和 更 大 的 表 示 范 围 ,常 常 使 用 。 三 、 实 型 变 量 定 义 ,如 float f; //指 定 变 量 f为 float型 double d; //指 定 变 量 d为 double型 [注 ]与 C、 C 不 同 ,Java中 没 有 无 符 号 型 整 数 ,而 且 明 确 规 定 了 整 型 和 浮 点 型 数 据 所 占 的 内 存 字 节 数 ,这 样 就 保 证 了 安 全 性 、 鲁 棒 性 和 平 台 无 关 性 。 § 2.5字 符 型 数 据 一 、 字 符 常 量 字 符 常 量 是 用 单 引 号 括 起 来 的 一 个 字 符 ,如 ‘ a’ ,‘ A’ 。 另 外 ,与 C、 C 相 同 ,Java也 提 供 转 义 字 符 ,以 反 斜 杠 (\)开 头 ,将 其 后 的 字 符 转 变 为 另 外 的 含 义 ,下 表 列 出 了 Java中 的 转 义 字 符 。 与 C、 C 不 同 ,Java中 的 字 符 型 数 据 是 16位 无 符 号 型 数 据 ,它 表 示 Unicode集 ,而 不 仅 仅 是 ASCII集 ,例 如 \u0061表 示 ISO拉 丁 码 的 ‘ a’ 。 转义字符 描述 \ddd 1到3位8进制数据所表示的字符(ddd) \uxxxx 1到4位16进制数所表示的字符(xxxx) \' 单引号字符 \\ 反斜杠字符 \r 回车 \n 换行 \f 走纸换页 \t 横向跳格 \b 退格 二 、 字 符 型 变 量 字 符 型 变 量 的 类 型 为 char,它 在 机 器 中 占 16位 ,其 范 围 为 0~ 65 535。 字 符 型 变 量 的 定 义 如 : char c='a'; //指 定 变 量 c为 char型 ,且 赋 初 值 为 'a' 与 C、 C 不 同 ,Java中 的 字 符 型 数 据 不 能 用 作 整 数 ,因 为 Java不 提 供 无 符 号 整 数 类 型 。 但 是 同 样 可 以 把 它 当 作 整 数 数 据 来 操 作 。 例 如 : int three=3; char one='1'; char four=(char)(three one);//four='4' 上 例 中 ,在 计 算 加 法 时 ,字 符 型 变 量 one被 转 化 为 整 数 ,进 行 相 加 ,最 后 把 结 果 又 转 化 为 字 符 型 。 三 、 字 符 串 常 量 与 C、 C 相 同 ,Java的 字 符 串 常 量 是 用 双 引 号 ("")括 起 来 的 一 串 字 符 ,如 "This is a string.\n"。 但 不 同 的 是 ,Java中 的 字 符 串 常 量 是 作 为 String类 的 一 个 对 象 来 处 理 的 ,而 不 是 一 个 数 据 。 有 关 类 String,我 们 将 在 第 七 章 讲 述 。 § 2.6布 尔 型 数 据 布 尔 型 数 据 只 有 两 个 值 ,true和 false,且 它 们 不 对 应 于 任 何 整 数 值 。 在 流 控 制 中 常 用 到
欢迎光临 江西广告网 (http://bbs.jxadw.com/)
Powered by Discuz! X3.2