摘要:缘起这是语言程序设计的,计划之前全部整理完。产生随机数的方法。复习题双分支语句复习题嵌套的语句和多分支语句复习题常见错误和陷阱常见错误两个浮点数值的相等测试复习题产生随机数产生一个到之间的随机值,不包括。
缘起
这是《Java语言程序设计(10th)》的Part1,计划2017-12-31之前全部整理完。
2017-12-23开始想看这本书的,并同时开始实践起Java来的。
Part的内容包含(chap1-chap8)【L(12/679】
内容 chap1 计算机、程序和Java概述 1(24/679)2017-12-23自己用JDK+Eclipse搭建了一个开发环境。
chap3 选择 64(87/679)2017-12-25开始学习的。
3.2 boolean数据类型
六种关系操作符(relational operator)或者叫(comparison operator)
true和false都是直接量,就像10这样的数字。它们被当作保留字一样,不能用做程序中的标识符。但他们应该不是关键字或保留字。
[AdditionQuiz.java]()
import java.util.Scanner以及Scanner input = new Scanner(System.in) 类似C里的scan()。
创建Scanner对象何时释放的问题,代码里没写,但Eclipse里提示了。
产生随机数的方法System.currentTimeMillis()。
复习题 66(89/679)
3.3 至少在java里int类型和boolean类型无法强制转换 int i = 1; boolean b =(boolean)i 这种IDE会报错。
3.3 if语句
[SimpleIfDemo.java]
在Eclipse里输入sysout就是相当于System.out.println();
同样Alt+/组合键
input.nextInt()是取得用户输入的一个int值,如果不是int值报错。
复习题 68(91/679)
3.4 双分支if-else语句
复习题 69(92/679)
3.5 嵌套的if语句和多分支if-else语句
复习题 70(93/679)
3.8-3.10
3.6 常见错误和陷阱 71(94/679)
常见错误5:两个浮点数值的相等测试
复习题 73(96/679)
3.11 - 3.14
3.7 产生随机数
Math.random()产生一个0.0到1.0之间的随机double值,不包括1.0。
[SubtractionQuiz.java]() 75(98/679)
复习题 75(98/679)
3.8
3.9
3.10 逻辑操作符
3.11
3.12
3.13 switch语句
3-9[ChineseZodiac.java]()
switch相对用得较少一些,都不太记得语法结构了
复习题 88(111/679)
3.29 - 3.32
3.14 条件表达式
复习题 89(112/679)
3.33 - 3.36
3.15 操作符的优先级
复习题 90(113/679)
3.37 - 3.40
3.16 调试
JDK包含了一个命令行调试器jdb。
本章小结 91(114/679)
编程练习题 92(115/679)
chap4 数学函数、字符和字符串 100(123/679)
4.2 常用数学函数
Math.PI和Math.E
三角函数方法
指数函数方法
[ComputeAngles]()
复习题 104(127/679)
4.1 - 4.7
4.3 字符数据类型和操作
复习题 108(131/679)
4.8 - 4.15
4.4 String类型
String实际上与System类和Scanner类一样,都是Java库中一个预定义的类。String类型不是基本类型,而是引用类型(reference type)。
length()
charAt(index)从字符串中获取字符
注意越界,每一个字符的下标值是0。
concat()连接字符串
toLowerCase()和toUpperCase()字符串的转换
Scanner对象上的next()方法,从控制台读取字符串
Scanner对象上的nextLine()方法,从控制台读取字符串
字符串比较
[OrderTwoCities]()
substring()获得子字符串
indexOf()和lastIndexOf()获取字符串中的字符或子串
Integer.parseInt()和Double.parseDouble()字符串和数字间的转换
复习题 116(139/679)
4.16 - 4.20
4.5 示例学习
[GuessBirthday]()
[HexDigit2Dec]()
[LotteryUsingStrings]()
4.7 格式化控制台输出
System.out.printf()
[FormatDemo]()
chap5 循环 133(156/679) chap6 方法 171(194/679)
6.2 定义方法
本章的所有方法都使用静态修饰符static,但原因在chap9描述了,那是不是每个方法都要有static呢?
定义(指被定义的条目是什么)与声明(指为被声明的条目分配内存来存储数据)的区别。
6.3 调用方法
[601TestMax.java]()
main()方法在于它由Java虚拟机调用的。
每当调用一个方法时,系统会创建一个活动记录(也称为活动框架),用于保存方法中的参数和变量。活动记录置于一个内存区域中,称为调用堆栈(call stack)。175(198/679)
6.4 void方法示例
[602TestVoidMethod.java]()
[603TestReturnGradeMethod.java]()
复习题 177(200/679)
6.1 - 6.10
6.5 通过传值进行参数传递
[604Increment.java]()
[605TestPassByValue.java]()
复习题 180(203/679)
6.11 - 6.14
6.6 模块化代码
[606GreatestCommonDivisorMethod.java]()
[607PrimeNumberMethod.java]()
6.7 示例代码
[608Hex2Dec.java]()
6.8 重载方法
[609TestMethodOverloading.java]()
复习题 187(210/679)
6.15 - 6.17
6.9 变量的作用域
局部变量
6.10 示例学习
[610RandomCharacter.java]()
[611TestRandomCharacter.java]()
6.11 方法抽象和逐步求精
方法抽象(method abstraction)是通过将方法的使用和它的实现分离来实现的。
“分治”(divid-and-conquer)策略,也称为逐步求精(stepwise refinement)。
自顶向下的设计、实现
待完善方法(stub)是方法的一个简单但不完整的版本。
[612PrintCalendar.java]()
逐步求精的优势
更简单的程序
重用方法
易于开发、调试和测试
更方便团队合作
编程练习题 197(220/679)
chap7 一维数组 207(230/679) chap8 多维数组 242(265/679)8.2 二维数组的基础知识
8.3 处理二维数组
8.4
[801PassTwoDimensionalArray]()
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/71156.html
摘要:偶然间在朋友圈发现有人在看一本两周自制脚本语言,觉得写个脚本语言挺不错的,方便自己对语言本身进一步了解。,不过同样,该教程采用的也不是。在这里写出代码方便自己查找,同时也希望一些对解释器感兴趣的朋友一同学习。 偶然间在朋友圈发现有人在看一本《两周自制脚本语言》,觉得写个脚本语言挺不错的,方便自己对语言本身进一步了解。于是乎,买了下来看了看,写的挺通俗易懂,但是不便的是,采用的语言是Ja...
摘要:在,我们使用作为事件流架构的一部分。在源断和端,它使非常容易建立以及丢弃的。因此,第一步就是创建一个预安装了的镜像。一个基础的拓扑一个拓扑由组成,它有个核心概念和。 注:该文的原文为 Using Docker with Apache Flume - Part 1,由 Alex Wilson 编写。 在 Unruly ,我们使用 Apache Flume 作为事件流架构的一部分...
摘要:在,我们使用作为事件流架构的一部分。在源断和端,它使非常容易建立以及丢弃的。因此,第一步就是创建一个预安装了的镜像。一个基础的拓扑一个拓扑由组成,它有个核心概念和。 注:该文的原文为 Using Docker with Apache Flume - Part 1,由 Alex Wilson 编写。 在 Unruly ,我们使用 Apache Flume 作为事件流架构的一部分...
摘要:所以这情况下,当线程操作变量的时候,变量并不对线程可见。总结,缓存引发的可见性问题,切换线程带来的原子性问题,编译带来的有序性问题深刻理解这些前因后果,可以诊断大部分并发的问题 背景介绍 如何解决并发问题,首先要理解并发问题的实际源头怎么发生的。 现代计算机的不同硬件的运行速度是差异很大的,这个大家应该都是知道的。 计算机数据传输运行速度上的快慢比较: CPU > 缓存 > I/O ...
摘要:汽车本身就是复杂产品对象,其制造过程可以形象的表示建造者模式。另一辆法拉利,。法拉利具体建造者代码如下构造法拉利的第一部分。咻咻法拉利已造好三建造者模式的优缺点优点降低代码耦合度。 在未上大学之前,一直有个梦想I have a dream!,就是能成为一位汽车工程师,一直幻想着开着自己设计的汽车飞奔在公路上,迷倒了万千少女。咳咳~~虽然现在没实现我的dream,但梦想还是得有的。 说到...
阅读 1309·2021-11-24 09:39
阅读 1300·2021-11-04 16:12
阅读 2667·2021-09-24 09:47
阅读 3300·2021-09-01 10:50
阅读 1448·2019-08-30 15:55
阅读 1406·2019-08-30 15:43
阅读 592·2019-08-30 11:08
阅读 3558·2019-08-23 18:33