質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

2回答

1278閲覧

文字数について

kimura

総合スコア59

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2016/08/25 12:36

数字と,を順番に書き込みましたが文字数の結果で悩んでます。
s1の文字数は10文字で理解できるのですが、s2は20文字 s3は200文字かと思ったら違う結果になりました。
何故、このような結果になるのでしょうか?
ご教授いただけますようお願い致します。

StringBuilder

1 StringBuilder s2 = new StringBuilder(); 2 StringBuilder s3 = new StringBuilder(); 3 4 for(int i=1; i<=5; i++){ 5 s1.append(i).append(","); 6 } 7 System.out.println(s1); 8 System.out.println("1から5の文字数は" + s1.length() + "文字です。"); 9 10 for(int i=1; i<=10; i++){ 11 s2.append(i).append(","); 12 } 13 System.out.println(s2); 14 System.out.println("1から10の文字数は" + s2.length() + "文字です。"); 15 16 for(int i=1; i<=100; i++){ 17 s3.append(i).append(","); 18 } 19 System.out.println(s3); 20 System.out.println("1から100の文字数は" + s3.length() + "文字です。"); 21コード

コンソール結果
1,2,3,4,5,
1から5の文字数は10文字です。
1,2,3,4,5,6,7,8,9,10,
1から10の文字数は21文字です。
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,
1から100の文字数は292文字です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

s1:1~5が各1文字で5文字、コンマが5回、計10文字
s2:1~9が各1文字で9文字、10で2文字、コンマが10回、計21文字
s3:1~9が各1文字で9文字、10~99が各2文字で180文字、100が3文字、コンマが100回、計292文字

何らおかしくないと思いますが…

投稿2016/08/25 12:57

swordone

総合スコア20651

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kimura

2016/08/25 12:58

ここで言われるまで気づきませんでした。 ありがとうございました。
guest

0

ベストアンサー

「s2は20文字」ではなく「21文字」になるのは、最後の「10」が2文字分に数えられているからでは?

そう考えると何も不思議は無いと思うのですが・・・

投稿2016/08/25 12:50

pi-chan

総合スコア5936

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kimura

2016/08/25 12:51

なるほどです。 納得しました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問