图书前言

前    言

  Java是Sun公司推出的能够跨多平台的、可移植性最好的一种面向对象的编程语言。其强大的跨平台特性使Java程序可以运行在任何一个系统平台上,包括智能手机、平板电脑等。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等,这使得它成为应用范围最广泛的开发语言。广泛的应用必将带来新一轮的学习热潮。

  随着对Java的了解越来越深,Sun对Java的设计目标给我们留下了最深刻印象,那就是:为程序员减少复杂性。用他们的话说就是:“我们关心的是,减小开发健壮代码所需的时间以及困难。”在早期,这个目标使得代码的运行并不快(Java程序的运行效率已经改善了),但它确实显著地缩短了代码的开发时间。

  与用C++开发相同的程序相比,采用Java只需一半甚至更少的开发时间。仅此一项,就已经能节约无法估量的时间与金钱了,然而Java并未止步于此。它开始着手解决日渐变得重要的各种复杂任务,例如多线程与网络编程,并将其作为语言特性或以工具库的形式纳入Java,这使得开发此类应用变得倍加简单。最终,Java解决了一些相当大的复杂性问题:跨平台编程、动态代码修改,甚至是安全的议题。它让你在面对其中任何一个问题时,都能从“举步维艰”到“起立鼓掌”。抛去我们都能看到的性能问题,Java确实非常精彩地履行了它的诺言:极大地提升程序员的生产率。

  为了帮助读者拓宽Java编程思维,提高Java编程能力,培养编程兴趣,掌握用程序设计解决实际问题的方法与技巧,笔者结合自己多年的Java开发经验和心得体会,选择了100个Java编程趣味题,详细讲解这些题目的求解过程,书中的每个实例都给出了详细的代码及注释。希望读者通过阅读本书,喜欢Java编程,并最终能提高Java编程的水平,为自己的职业技能奠定一个良好的基础。

本书特色

  1.视频教学,高效、直观

  本书中的实例专门录制了对应的多媒体教学视频,以辅助读者学习,高效而直观。读者可以先阅读本书内容,再结合多媒体教学视频进行学习,以获得最佳的学习效果。

  2.实例新颖,趣味性强

  兴趣是最好的老师,本书编写过程中始终贯穿这一思想,选取的100个实例都从趣味编程的角度出发,并兼顾实用性。

  3.讲解细致,通俗易懂

  本书的写作过程基本一致,都是先提出问题,再分析问题,接着确定程序框架,然后从整体到局部,一步一步地补充完善程序。每个实例都详细讲解了每一个环节,讲解的过程就是程序从无到有、从小变大的过程。

  4.类型多样,实用性强

  本书每章都是一种类型的题目,基本涵盖了各种常见的问题,很多实例来自编程大赛和企业面试题,具有很强的实用价值。

  5.代码详细,注释丰富

  本书中的每一个实例都给出了详细的实现代码,并给出了大量的注释,这可以让读者阅读代码时毫无障碍,能获得更好的学习效果。

  6.覆盖面广

  本书内容基本上涵盖了了Java程序设计所涉及的常用知识点,适合学习Java的读者作为上机编程实践的指导书。

  7.提供技术支持,答疑解惑

  阅读本书时若有疑问可发送E-mail到bookservice2008@163.com获得帮助,也可以在本书的技术论坛(http://www.wanjuanchina.net )上留言,以获得帮助。

本书内容及体系结构

  第1章  变幻多姿的图表

  本章主要包括金字塔图案、余弦曲线、奥运五环旗、心形图案等趣味题。通过本章的学习,读者可以掌握变幻多姿图表编程的核心技术及应用。

  第2章  身边的数学问题

  本章主要包括黑色星期五、个人所得税、分糖果、天平称物、二维多项式计算、线性方程求解、非线性方程求解等趣味题。通过本章的学习,读者可以掌握如何通过程序设计来解决一些有趣的数学问题。

  第3章  趣味整数

  本章主要包括水仙花数、完数、相亲数、黑洞数、自守数等趣味题。通过本章的学习,读者可以掌握趣味整数编程的技巧及应用。

  第4章  趣味素数

  本章主要包括孪生素数、金蝉素数、可逆素数、回文素数、平梅森尼数、哥德巴赫猜想等趣味题。通过本章的学习,读者可以掌握趣味素数编程的核心技术及应用。

  第5章  趣味方程

  本章主要包括百鸡百钱、楼梯台阶、换硬币、鸡兔同笼、五家共井、三色球问题等趣味题。通过本章的学习,读者可以掌握巧用方程解决问题的核心技术。

  第6章  趣味分数

  本章主要包括最大公约数、最小公倍数、分数比较、分数求和、埃及分数式、计算分数精确值、猴子分桃等趣味题。通过本章的学习,读者可以掌握趣味分数编程的核心技术及应用。

  第7章  逻辑推理

  本章主要包括斐波那契数列、年龄问题、谁在说谎、游客国籍、谁家孩子跑得最慢、猴子爬山、舍罕王赏麦等趣味题。通过本章的学习,读者可以掌握逻辑推理编程的核心技术及应用。

  第8章  趣味变幻

  本章主要包括分解质因数、乘式还原、除式还原、幻方、泊松分酒、猜牌术、邮票组合、整数拆分等趣味题。通过本章的学习,读者可以掌握趣味变幻编程的核心技术及应用。

  第9章  定理与猜想

  本章主要包括四色定理、角谷猜想、Л的近似值、卡拉列克常数、剩余定理、尼科彻斯定理、马踏棋盘等趣味题。通过本章的学习,读者可以掌握定理与猜想编程的核心技术及应用。

  第10章  趣味游戏

  本章主要包括掷骰子、发扑克牌、24点、常胜将军、人机猜数、过桥游戏、生命游戏等趣味题。通过本章的学习,读者可以掌握趣味游戏编程的核心技术及应用。

  第11章  其他趣味问题

  本章主要包括字符串匹配、双色球、金额转换、高斯八皇后、罗马数字、找假币、窃贼问题、三色旗等趣味题。通过本章的学习,读者可以掌握其他趣味问题编程的核心技术及应用。

本书读者对象

* 普通高校本、专科学生;

* 职业技术院校的学生;

* 程序设计爱好者;

* 各级程序设计选拔赛学员;

* 青少年信息学奥林匹克竞赛人员。

本书作者

  本书由衡友跃主笔编写。其他参与编写的人员有毕梦飞、蔡成立、陈涛、陈晓莉、陈燕、崔栋栋、冯国良、高岱明、黄成、黄会、纪奎秀、江莹、靳华、李凌、李胜君、李雅娟、刘大林、刘惠萍、刘水珍、马月桂、闵智和、秦兰、汪文君、文龙。

  

  编著者

  

  ??

  

  ??

  

  ??

  

  ??

  

Java趣味编程100例

  

前言

  

·IV·

  

  

·III·