List of Exercises

Table 2. Exercises in 113105 Software development 1
Chapter Exercise
No. Title Status of completion
Getting started 1 Extending class HelloWorld
2 Working with variables
3 A conditional
4 A loop
Language Fundamentals 5 Hotel key cards
6 Literal samples
7 Literals of type int
8 Integer overflow
9 Strange sum result
10 The sum of two values
11 Legal variable names
12 Benefits of final
13 «C» vs. Java.
14 Assignment and type safety
15 An int's minimum and maximum value
16 Pretty may not be pretty
17 Strange output
18 Poor mans ASCII table
19 Integer value hexadecimal representation
20 Binary literals
21 Testing the limits (Difficult)
22 Why using braces in System.out.println(...) ?
23 Composing strings of literals and variables
24 Escaping double quotes
25 Supplementary string exercises
26 int and char
27 float vs. double
28 int to char narrowing problems
29 Get a byte from 139
30 Calculating a circle's area
31 Dividing values
32 Strange things with operator ++
33 Adding values
34 Representational float and double miracles
35 Expressions involving infinity
36 int to short assignment
37 int to short assignment using final
38 Turning weeks into seconds
39 Turning seconds into weeks
40 Converting temperature values
41 Time unit conversion
42 Interest calculation
43 Summing short and char
44 Operator & vs. &&
45 Strange addition
46 Understanding +=
47 Three ways expressing the same
48 Guessing results
49 Cleaning up the mess
50 Evaluating a sum
Statements 51 Blocks and variable glitches
52 Providing better display
53 Comparing for equality
54 Replacing else if (...){...} by nested if ... else statements
55 Post modifying an exam's marking
56 At the bar
57 Roman numerals
58 Leap years
59 Why break?
60 Extending to month days
61 Converting day's names to numbers.
62 Day categories.
63 Roman numerals, using switch
64 Generating square numbers
65 Calculating factorial
66 Even or odd?
67 Square root approximation
68 Printing numbers
69 Printing just even numbers
70 Merry Xmas
71 More fun with Xmas trees
72 A basic square number table
73 Tidy up the mess!
74 HTML-ify me
75 Auxiliary Example, part 1: A multiplication table
76 Auxiliary Example, part 2: Avoiding redundant entries
77 Creating a real square table
78 Creating a sophisticated HTML version of your square table
79 Display all summands
80 Playing lottery
81 Guessing numbers
82 Smallest multiple
83 Smallest multiple, purely algebraic solution
84 Pythagorean triples
85 Avoiding duplicates and gaining performance
Objects and Classes 86 Compile time error
87 An Address class
88 Understanding access control
89 Explaining times
90 Implementing getter methods
91 Method signature variants
92 Will a match be found?
93 Modeling geometry objects: Rectangles
94 Modeling circles
95 Adding translations and SVG export.
96 Extending the employee example.
97 Refining access to an employee's attributes
98 File system representation
99 Your personal String class
100 Constructors variable names and this.
101 Class vs. instance
102 Distinguishing leap- and non-leap years
103 A method for printing square numbers using for, while and do ... while
104 Nicely formatting sine values.
105 Extending our interest calculator
106 Integer value considerations.
107 Programmer's favourite expression
108 Lotteries revisited
109 Finding the greatest common divisor of two integer values
110 Dealing with IBAN numbers
111 Cancelling fractions
112 Dealing with local Maven dependencies
113 DNS inflicted groupId / package names clashes
114 Details on execution
115 Maximum and absolute value
116 Factorial, the direct way
117 Factorial, the recursive way
118 Binomials, the recursive way
119 The exponential f x = e x
120 Implementing sin ( x ) .
121 Summing up in a different order.
122 Summing up integers to a given limit
123 Summing up, the better way
124 Turning seconds into weeks, part 2
125 Example: A class representing fractions
126 Compass directions
127 Compass direction neighbours
128 Former zodiac examination task
129 git local, DIY
130 git distributed, DIY
Core Classes 131 Choosing a good hashCode() method
132 String and good hashCode() implementations.
133 Common pitfall using trigonometric functions
134 Strings on CodingBat
135 Masking strings
136 Analyzing strings
137 Pitfalls using ==: Equality of String instances
138 Weird, weirder, weirdest!
139 Analyzing file pathnames
Arrays 140 Assignment to final variable?
141 Converting string arrays to HTML.
142 Route navigation
143 Examinations and mark frequencies
144 Pangram checker
145 Reconsidering System.out.format().
146 Understanding search results
147 Implementing append directly
148 Purge duplicates
149 A container of fixed capacity holding integer values
150 Allow for variable capacity holding integer values
151 Reading console input
152 Prettifying output representation
153 2-dimensional arrays and .length
154 External array and string exercises
155 Tic-tac-toe using a two-dimensional array
156 Changing the game's internal representation
157 Tic-tac-toe, Computer vs. human
158 Adding support to retrieve statistical data.
159 Testing an implementation
160 Improving prime number calculation performance
161 Calculating the median
162 A simple character based plotting application
Inheritance 163 Let me pass, please!
164 Why is == correctly comparing enum instances?
165 String vs. StringBuffer
166 Alternate implementation of opposite directions
167 Defining a Shape class hierarchy
168 Scaling shapes
169 Providing toString() methods
170 protected vs. package private
171 protected access involving different instances
Error Handling 172 Mind your prey
173 Expected exception test failure
Working with Numbers 174 Auto boxing int to Double?
175 Why using String userInput = null?
176 Parsing short values
177 Parsing short values in hexadecimal representation
178 Locale definitions
179 Formatting int, double and LocaleDate
180 Chaining subtract method calls
interface definitions and abstract Classes 181 Understanding Arrays.sort()
182 Sorting Rectangle instances by width
183 Sorting Rectangle instances by width and height
184 Adding flexibility in sorting rectangles
185 A nonsense generator
186 An interface based plotter
Application deployment I 187 Various integer array algorithms
188 A command line version computing a sample's average and median
Reading character streams 189 Adding line numbers to text files
190 A partial implementation of GNU UNIX wc
Collections 191 Inserting strings into a Set.
192 Inserting strings into a List.
193 Representing integer coordinate values
194 Inserting Coordinate instances into a Set.
195 Getting a text's set of words.
196 A text's set of words in alphabetic order
197 Implementing unusual string sorting.
198 Words and corresponding frequencies
199 Formatting an address list
200 Implementing a set of strings
201 Implementing word frequencies by Map<String, Integer> instances.
202 Regain sorting capabilities.
203 Creating an overview of grades showing frequencies
204 Creating an overview of grades showing individual names