万象云档 本次搜索耗时 2.192 秒,为您找到 149 个相关结果.
  • 2.2.3 浮点数类型 float

    2.2.3 浮点数类型 float 2.2.3 浮点数类型 float 浮点数就是包含小数点的数,大体对应于数学中的实数集合。现实世界中的职工工资(以 元为单位)、房屋面积(以平方米为单位)、人的身高(以米为单位)、圆周率等在程序中都 适合用浮点数表示。 Python 语言提供了类型 float 用于表示浮点数。float 类型的字面值形式与数学中的...
  • 8.5 排序

    8.5 排序 8.5 排序 Java 1.0和1.1库都缺少的一样东西是算术运算,甚至没有最简单的排序运算方法。因此,我们最好创建一个Vector ,利用经典的Quicksort (快速排序)方法对其自身进行排序。 编写通用的排序代码时,面临的一个问题是必须根据对象的实际类型来执行比较运算,从而实现正确的排序。当然,一个办法是为每种不同的类型都写一个...
  • 1.1.4 实现

    1.1.4 实现 1.1.4 实现 给定一个问题,当我们找到解决问题的算法后,接着就需要用某种计算机语言将这个算 法 表 达 出来, 最终 得到一 个能 被计算 机执 行的程 序(或代 码 ),这 个 过程称 为 实现(implementation),或者俗称为写代码(coding)。 严格地说,算法与程序是不同的:算法是用非形式化方式表述的解决问题的...
  • 第6章 类复用

    第6章 类复用 第6章 类复用 “Java引人注目的一项特性是代码的重复使用或者复用。但最具革命意义的是,除代码的复制和修改以外,我们还能做多得多的其他事情。” 在象C那样的程序化语言里,代码的重复使用早已可行,但效果不是特别显著。与Java的其他地方一样,这个方案解决的也是与类有关的问题。我们通过创建新类来重复使用代码,但却用不着重新创建,可以直接...
  • 6.4.2 文件操作

    6.4.2 文件操作 6.4.2 文件操作 常用计算机的人都知道,许多应用软件(如 Word、媒体播放器等)都需要处理文件, 并且都需要经过打开文件、读写文件、关闭文件的步骤,这其实是程序设计中文件处理的一 般过程的反映。 打开文件 在读写文件之前首先需要“打开”文件,这个步骤可以简单地理解为对磁盘文件进行必 要的初始化,至于其底层细节则无需了解。...
  • 1.1 抽象的进步

    1.1 抽象的进步 1.1 抽象的进步 所有编程语言的最终目的都是提供一种“抽象”方法。一种较有争议的说法是:解决问题的复杂程度直接取决于抽象的种类及质量。这儿的“种类”是指准备对什么进行“抽象”?汇编语言是对基础机器的少量抽象。后来的许多“命令式”语言(如FORTRAN,BASIC和C)是对汇编语言的一种抽象。与汇编语言相比,这些语言已有了长足的进步...
  • 16.9 总结

    16.9 总结 16.9 总结 从表面看,由于象TrashVisitor.java 这样的设计包含了比早期设计数量更多的代码,所以会留下效率不高的印象。试图用各种设计模式达到什么目的应该是我们考虑的重点。设计模式特别适合“将发生变化的东西与保持不变的东西隔离开”。而“发生变化的东西”可以代表许多种变化。之所以发生变化,可能是由于程序进入一个新环境,或者...
  • 9.2 原型法

    9.2 原型法 9.2 原型法 我们在 4.3 中介绍了自顶向下逐步求精的程序设计方法。自顶向下设计是非常强大的程 序设计技术,但它也有不适用的场合。 自顶向下设计的第一步是顶层设计,这需要设计者对问题的全局有清晰的认识。万一要 解决的问题非常复杂,或者用户需求不是很完整、清晰,这时顶层设计就非常困难。另外, 设计者有时候会卡在自顶向下层次中的某一层...
  • 1.4 程序排错

    1.4 程序排错 1.4 程序排错 先说一个坏消息:一旦开始写程序,就免不了要出错。程序设计虽然并不难,但无论是 初学编程者还是经验丰富的专业程序员,程序中出现各种错误都是很常见的。 再说一个好消息:计算机(严格说是编译器或解释器)能够帮助我们发现程序中的很多 错误。 在计算机行话中,程序中的错误被称为“臭虫”(bug),而发现并改正错误的过程称为...
  • 7.2.4 编程实例:模拟炮弹飞行

    7.2.4 编程实例:模拟炮弹飞行 7.2.4 编程实例:模拟炮弹飞行 本节讨论一个模拟炮弹飞行的程序的设计。我们采用三种设计方法,得到三个版本的程序。通过比较各个版本的差别,可以看出 OOP 与传统的面向过程编程相比具有明显优点。 算法设计 程序规格是输入炮弹的发射角度、初速度和高度,输出炮弹的射程。 虽然可以利用复杂的数学公式直接算出射程,但我...