"So, you've managed to pick this book up. Cool. Really, I'm excited about that!" wow: "It's my strong belief that while the nineties were characterized by everyone wanting to learn everything (Why not? We all had six-figure incomes from dot-com companies), the new millennium is about information pain. People don't have time (or the income) to read through 600 page books, often learning 200 things, of which only about 4 apply to their current job. It would be much nicer to just sit near one of the ubercoders and look over his shoulder, wouldn't it?" yesss:'"In fact, a good notebook is incomprehensible to someone who can't program " "do you really have time to sit around reading something that isn't any fun?" i guess so. arrays: public class ArraysTester { private int[] ar; public ArraysTester(int numValues) { ar = new int[numValues]; for (int i=0; i < ar.length; i++) { ar[i] = (1000 - (300 + i)); } } typing 'safely': private static List ints = new ArrayList( ); back @ 3:13pm tA The locale-specific full name of the day of the week %ta The locale-specific abbreviation of the day of the week %tB The locale-specific full name of the month %tb The locale-specific abbreviation for the month %tC The century, from 00 to 99 (by dividing by 100) %tc The complete date and time %tD The date in short numeric form %td The day of the month, as a two-digit numberÑ01 to 31 %tE The date as milliseconds since midnight, UTC, on Jan. 1st, 1970 %te The day of the month, without leading zeroesÑ1 to 31 %tF The numeric day in ISO8601 format %tH Two-digit hour of the day, using a 24-hour clockÑ00 to 23 %th The abbreviated month name (identical to %tb) %tI Two-digit hour of the day using a 12-hour clockÑ01 to 12 %tj Three digit day of the yearÑ001 to 366 %tk Hour of the day on a 24-hour clockÑ0 to 23 %tL Three-digit milliseconds within the secondÑ000 to 999 %tl Hour of the day on a 12-hour clockÑ1 to 12 %tM Two-digit minute within the hourÑ00 to 59 %tm Two-digit month of the yearÑ01 to 12 (01 to 13 for lunar calendars) %tN Nanosecond within the second, expressed as nine digits %tp Locale-specific morning or afternoon indicator %tR The hour and minute on a 24-hour clock %tr The hour, minute, and second on a 24-hour clock %tS Two-digit seconds within the minuteÑ00 to 59 %ts Seconds since the beginning of the epoch %tT Time in hours, minutes, and seconds, using a 24-hour format %tY Four-digit (at least) year %ty Last two digits of the yearÑ00 to 99 %tZ Abbreviation for the timezone %tZ The timezone as a numeric offset from GMT - Indicates that the formatted value should be left-justified, based on width . # Indicates that the formatted output should appear in alternate form. For %o, this means a leading 0. For %x and %X, output will include a leading 0x (0X). For %s and %S, the flag is passed on to the object's formatTo( ) method. + Indicates that numeric output should always include a sign (+ or -). ' ' The space value (which is hard to show in a book) indicates that non-negative values should be prefixed with a space. This is generally used for alignment with negative numbers. ( Indicates that negative numbers should appear in parentheses. 0 Indicates that numeric values should be padded on the left. , Indicates that the locale-specific grouping character should be used for numeric values. formatter is like printf scheduling: " public class ScheduleTester { public static void main(String[] args) { // Get the scheduler ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor( ); // Get a handle, starting now, with a 10 second delay final ScheduledFuture timeHandle = scheduler.scheduleAtFixedRate(new TimePrinter(System.out), 0, 10, SECONDS); // Schedule the event, and run for 1 hour (60 * 60 seconds) scheduler.schedule(new Runnable( ) { public void run( ) { timeHandle.cancel(false); } }, 60*60, SECONDS); } } } " "The term semaphore has actually been around as long as concurrent programming. A semaphore represents one or more permits. Threads call acquire( ) to obtain a permit from the semaphore, and release( ) when done with the permit. If no permits are available, acquire( ) blocks, waiting for one to become available. In other words, a semaphore acts like a bouncer, only allowing so many people into the party at one time."