-bash-4.2$ cat One.java
import java.io.*;
import java.util.*; // why do we need this?

class One {
  public static void main(String[] args) throws Exception {
    Map<String, Integer> d = new HashMap<String, Integer>();
    System.out.println( d );
    for (int i = 0; i < args[0].length(); i++) {
      String letter = args[0].substring(i, i+1);
      if (d.containsKey( letter )) {
        d.put(letter, d.get(letter) + 1);
      } else {
        d.put(letter, 1);
      }
      System.out.println( d );
    }
  }
}

-bash-4.2$ javac One.java
-bash-4.2$ java One banana
{}
{b=1}
{a=1, b=1}
{a=1, b=1, n=1}
{a=2, b=1, n=1}
{a=2, b=1, n=2}
{a=3, b=1, n=2}
-bash-4.2$ java One whatever
{}
{w=1}
{w=1, h=1}
{a=1, w=1, h=1}
{a=1, t=1, w=1, h=1}
{a=1, t=1, e=1, w=1, h=1}
{a=1, t=1, e=1, v=1, w=1, h=1}
{a=1, t=1, e=2, v=1, w=1, h=1}
{a=1, r=1, t=1, e=2, v=1, w=1, h=1}
-bash-4.2$ java One "To be or not to be."
{}
{T=1}
{T=1, o=1}
{ =1, T=1, o=1}
{ =1, b=1, T=1, o=1}
{ =1, b=1, T=1, e=1, o=1}
{ =2, b=1, T=1, e=1, o=1}
{ =2, b=1, T=1, e=1, o=2}
{ =2, b=1, r=1, T=1, e=1, o=2}
{ =3, b=1, r=1, T=1, e=1, o=2}
{ =3, b=1, r=1, T=1, e=1, n=1, o=2}
{ =3, b=1, r=1, T=1, e=1, n=1, o=3}
{ =3, b=1, r=1, T=1, t=1, e=1, n=1, o=3}
{ =4, b=1, r=1, T=1, t=1, e=1, n=1, o=3}
{ =4, b=1, r=1, T=1, t=2, e=1, n=1, o=3}
{ =4, b=1, r=1, T=1, t=2, e=1, n=1, o=4}
{ =5, b=1, r=1, T=1, t=2, e=1, n=1, o=4}
{ =5, b=2, r=1, T=1, t=2, e=1, n=1, o=4}
{ =5, b=2, r=1, T=1, t=2, e=2, n=1, o=4}
{ =5, b=2, r=1, T=1, t=2, e=2, n=1, .=1, o=4}
-bash-4.2$