Java Training Course/Example Programs

From tehowiki
Revision as of 06:57, 28 November 2017 by imported>Gfis (Collections)
Jump to navigation Jump to search

All example Java programs can be obtained from a Git repository:

git clone https://github.com/gfis/jtc

Start with a greeting

  • HelloWorld - one-liner: output a greeting

Arguments, assignment, elementary String and arithmetic operations

  • StringAdd - concatenate argument strings 4 times and print them out
  • IntAdd - add 4 integers 4 times and print them
  • IntMultiply - multiply 4 integers 4 times and print the product
  • LongMultiply - multiply 4 long numbers

Loops (while, for) and conditions (if), arrays ([])

  • PowersOf2 - print the powers of 2
    • PowersOf2Check - check for increasing sequence
    • PowersOf2Backwards - print sequence backwards
    • PowersOf2Array - print sequence from an array

Sequences of conditions with switch, if - then - else if ...

  • Selamat - print a greeting depending on the hour
  • SelamatSwitch - same with switch ... case ... default
  • Number10 - print the numbers 1..10
  • Number10Method - print the numbers using a class method
  • Month - print the indonese name of a month
  • Weekday - print the indonese name of a weekday

Sequences of words

  • Word1 - print all words with 1 letter
  • Word2 - print all words with 2 letters by 2 nested loops
  • Word3 - print all words with 3 letters by 3 nested loops
    • Word3Cond1 - print words with 3 letters and vowel/consonant conditions, first version
    • Word3Cond2 - same, using a method, 2nd version
    • Word3Cond3 - same, output on a single line, 3rd version

Filtering files

A filter program reads a file, modifies all lines somehow, and writes them to another file.

  • Filter1 - read a file and replace the vowels in each line
  • FilterNumber - read a file and replace all digits by their indonese number words
  • FilterMulti3 - read the modified output of Word3Cond3 and colorize the known words

Date and Calendars

  • Age - enter a birthday and compute the elapsed years, months ... seconds up to now

Fractional arithmetic

  • GreatestCommonDivisor - the first real algorithm
  • Ratio - introduction to object oriented programming (static version)
    • Rational - object with methods for mathematical operators for exact fractions
    • RationalTestSwing, AboutRationalTest - GUI for the addition, subtraction, multiplication of two Rationals

Games

  • PlayNim - play the Nim game with some number of sticks to be taken
    • PlayNimState - improve clarity of program logic by using a Discrete Finite State Automaton (DFSA)
    • PlayNimSwing, AboutPlayNim GUI for the Nim game
  • ChessGame, ChessPlayer, ChessField, ChessPiece - interconnected set of classes for the display of a chess game using Unicode characters for the pieces

File Handling and Collections

  • HexDump - hexadecimal dump of a file, maybe binary
  • FilterURL - filter a file read from an URL (http://..., ftp://..., file://...)
  • FilterTowns - read jtc/test/id_kota.lst with a list of indonesian towns, and extract the names and the number of inhabitants only
  • SearchTown - store the town data in a HashMap, and look one up there
  • SortTowns - store the town data in a TreeMap, and print a list sorted alphabetically by town name
  • SearchAlice - read a text from an URL, for example Alice in Wonderland, collect and count the names therein, and print a sorted list
  • WalkFileTree - run through a file directory with a subclass of FileVisitor and print the entries