First, JRuby behaves a little differently depending on whether you run it in 1.8 mode or 1.9 mode. With JRuby 1.7.0 and up, 1.9 is the default; with others, 1.8 is the default. To change the default, you pass either --1.8 or --1.9 to jruby on the command line.
In 1.8 mode, certain operations on strings, like getting the character at a single index, return numbers (Fixnums), whereas in 1.9 mode they always return strings. JRuby converts automatically between Ruby Fixnums between 0 and 65535 and Java chars, so you can pass a 1.8-mode "character" value directly to a Java method that accepts a character; e.g.
str = 'foo'
java_obj.methodThatTakesAChar(str[0])
In 1.9 mode, since str[0] is a single-character string, you have to convert its character to a number. You do this with the ord instance method:
str = 'foo'
java_obj.methodThatTakesAChar(str[0].ord)
I hope that helps.