Stringクラスの codePointAt (int) メソッドを使う方法もあるねぇ。codePointAt (i) は 0 から数えて i 番目の文字のコードポイント(※1)を返すんだ。例えば 「"abcの歌".charAt (2)」 は文字 「c」 のコードポイント 0x63 を返すよ。 これを使って、 ────────────────────────────── String s = "abcの歌" ; int 半角 = 0 ; int 全角 = 0 ; for (int i=s.length ()-1 ; 0<=i ; --i) .... { .... int cp = s .codePointAt (i) ; .... if (0x0<=cp && cp <= 0x7F) ++半角 ; /* ASCII文字 */ .... else if (0xFF61<=cp && cp<=
![String型の半角文字の数を取得する方法はないでしょうか?ただし全角文字は半角文字2つ分と数えます。"abcの歌"->7(半3:全... - Yahoo!知恵袋](https://cdn-ak-scissors.b.st-hatena.com/image/square/1d07bee2b75b182ba712690f3a3464c29972e28b/height=288;version=1;width=512/https%3A%2F%2Fs.yimg.jp%2Fimages%2Fks%2Fclap%2Fimage%2Fogp%2Fogp.png)