• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Stringbuilder insight

 
Ranch Hand
Posts: 664
Eclipse IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
This code snippet gives me the result of StringBuilder.codePointAt() for numbers 0 to 9:



However, whilst my output displays numeric codes, an article on Wikipedia, shows different values , any idea what the codePointAt() is meant to retrieve, other than the Unicode character?

0: 73
1: 32
2: 119
3: 97
4: 110
5: 116
6: 32
7: 116
8: 104
9: 101


NOTE to administrator: I got a complaint from the forum spellchecker because I was trying to illustrate what the unicode values on the articles included, for example "you" and a numeric value, which is misleading, because it is common for a developer to quote standards and code.
 
Marshal
Posts: 79177
377
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Why are you using Wikipedia rather than the Unicode website? What difference do you see? You haven't said what the input is. If we don't know the input, we shan't know whether there is any difference between the code points and chars.

If you want to post the letter U put that bit inside code tags.
 
Jon Camilleri
Ranch Hand
Posts: 664
Eclipse IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
It's not hard to copy and paste, even though unfortunately it does not work here, however, values for 0 to 9 return integers that do not seem related to Unicode characters.

If you want to post the letter U put that bit inside code tags.


It's not code it's English..


Output
0: 49
1: 50
2: 51
3: 52
4: 53
5: 54
6: 55
7: 56
8: 57
9: 48



 
Campbell Ritchie
Marshal
Posts: 79177
377
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Nothing wrong with that. You are printing '1' against '0' and '1' is 0x31. So it prints "49". Absolutely correct. Exactly the same value as the Unicode value for '1'.

Remember the Unicode website shows the numbers in hex and you are printing them in decimal. Try this printing instruction:And the reason for using code tags is that you are quoting your output and the checking for the letter U is disabled inside code tags.
 
Jon Camilleri
Ranch Hand
Posts: 664
Eclipse IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Campbell Ritchie wrote:Nothing wrong with that. You are printing '1' against '0' and '1' is 0x31. So it prints "49". Absolutely correct. Exactly the same value as the Unicode value for '1'.

Remember the Unicode website shows the numbers in hex and you are printing them in decimal. Try this printing instruction:And the reason for using code tags is that you are quoting your output and the checking for the letter U is disabled inside code tags.



So it's hex, converted to base-10, interesting notation, which has something to do with the way computers store binary digits in registers that are in multiples of 8 (e.g. 16, 32, 64 bit).

Whilst helpful, I couldn't quite figure out the printf line, since the compiler does not like compiling a cast to a (char) value, and, I couldn't quite understand the first parameter, it's not documented in my book (p.67-68).


 
Campbell Ritchie
Marshal
Posts: 79177
377
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
That is peculiar; the first tag is in my copy (older edition, page 61). And you should have read my post properly; I specifically declared cp as an int so you can cast it. The width and 0 options are clearly shown in the book too.

You should always look in the API documentation in preference to a book.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic