Here are the errors found to date in Java: Learning to Program with Robots. Please send additions to the list to bwbecker@learningwithrobots.com.
Ch | Page | Where | Error | Thanks to |
1 | 12 | Figure 1-8 | The constructor is missing a comma after int anAvenue . |
LK, 15-Jan-08 |
1 | 20 | Last sentence in 1.4.4 | Delete the last sentence in section 1.4.4. Some statements we discuss later do not end in a semicolon. | LK, 15-Jan-08 |
1 | 38 | Fig 1-25 | The frame should have a title of "FramePlay" to match the code. | SK, 29-Sep-09 |
1 | 41 | Line -5 | Direction.East which should be replaced with Direction.EAST . |
BWB, 15-Jun-06 |
2.6.1 | 87 | Line 2 | Signature is defined as a method's name, return type, and parameter (types). It should not include return type. | SK, 25-Oct-09 |
2 | 96 | Listing 2-14 | Line 6 should omit "extends Object " to be consistent with the rest of the book. |
BWB, 15-Jun-06 |
2 | 101 | Listing 2.16 | The given code will throw an exception if the robot attempts to
pick up or put down a Thing . This is an error in becker.jar . A corrected version is available for download. A workaround that works
with the distributed version is to add the following line to the ArmRobotIcon constructor: this.setSize(0.85); |
SW at ISU, 12-Jun-06 |
2 | Examples | In the file examplesch02experimentExperimentRobot.java in the Constructor and in the call to super, the street and avenue are interchanged. Street should be the 2nd argument, after City. | SK, 24-Sep-09 | |
3 | 131 | Line 38 | this.harvestIntersekction(); has an extra "k". |
SK, 25-Oct-09 |
3 | 132 | Fig 3-6 | The box labeled goToNextRow() in the second row should be labeled positionForNextHarvest() . |
BWB, 15-Jun-06 |
4 | 179 | Middle of page | !this.canPickThing should be !this.canPickThing() . |
SK, 11-Nov-09 |
4 | 194 | Listing 4-5 | In Line 6 "RectanglePlanterextendsRobotSE " should have spaces added: "RectanglePlanter extends RobotSE ". |
TK, 26-Feb-07 |
6 | 283 | Listing 6-4 | Line 4 should omit "extends Object " to be consistent with
the rest of the book.In Line 4 the class name should be TestSimpleBot to match
the text earlier on the page. |
BWB, 14-Jun-06; SK, 11-Nov-09 |
6 | 284 | Listing 6-5 | Line 8 should read this.direction instead of simply direction to be consistent with the rest of the book. |
BWB, 14-Jun-06 |
6 | 287 | Listing 6-6 | Line 15 should read private int direction = Constants.EAST; to be consistent with the previous discussion. |
BWB, 15-Jun-06 |
6 | 291 | Listing 6-7 | Line 14 should have sensorX - 6 and sensorY - 6 instead of sensorX - 5 and sensorY - 5 . |
BWB, 15-Jun-06 |
6 | 300 | Lines 10-11 | In the short listing, the lines labelled 11 and 12 City should be replaced with SimpleCity and Direction should be int . |
SW at ISU, 10-Oct-06 |
7 | 342 | The text fails to mention importing java.text.NumberFormat . |
BWB 26-Jun-06 | |
7 | 357 | Para 1 | "the keyword class replaces the keyword enum ..." should read "the keyword enum replaces the keyword class ..." | TK 24-Mar-06 |
7 | 383 | Line -8 | The declaration of uniqueID includes the keyword final ; it should not. |
BWB 26-Jun-06 |
7 | 389 | Problem 7.14b | FuncB should implement IQuadraticFunction
(note the I ). |
MB 12-Jun-12 |
8 | 437 | Para 4 | The template for the foreach statement should include <<statements using varName>> as the body of the loop. |
BWB 27-Jun-06 |
9 | 479 | Line 7 | A closing parenthesis is missing. | BWB 1-Aug-06 |
9 | 509 | Line 14 | The second bullet of Related Patterns should read "The action of reading one record..." | BWB 3-Aug-06 |
10 | 533 | Mid-page | The pseudocode is missing a return at the end. | BWB 15-Aug-06 |
10 | 546 | Listing 10-8 | Line 6 has readInt() ; it should be nextInt() . |
BWB 22-Aug-06 |