以前にも質問させていただきましたが、アンドロイドスタジオで電卓を作っています。
画面に表示させている文字列を数値に変換した変数と、数字ボタンが押された際に表示される文字列を数値に変換した、変数とでTextView内で連結させています。
連結させた所、それまで3桁毎についていたカンマが、4桁毎につくようになってしまいました。
「12,345」と表示させたいが、「1,2345」となっている。
前提・実現したいこと
3桁毎にカンマが入るように修正をし、「12,345」と表示させたい。
発生している問題・エラーメッセージ
4桁毎にカンマが入っている。
該当のソースコード
lang
1 private String number = new String(); 2 private int hengeAtai = 0; 3 private int num; 4 5// 0~9のボタンを押した時 6public void pushNumbers(View view) { 7 switch (view.getId()) { 8 case R.id.imageButton: 9 if (number.length() == 9) { 10 return; 11 } else { 12 number = "1"; 13 } 14 break; 15 case R.id.imageButton2: 16 if (number.length() == 9) { 17 return; 18 } else { 19 number = "2"; 20 } 21 break; 22 case R.id.imageButton10: 23 if (number.length() == 0) { 24 return; 25 } else if (number.length() == 9) { 26 return; 27 } else { 28 // それ以外の数字キーが、押されたら0を入力 29 number = "0"; 30 } 31 break; 32 } 33chengeAtai = Integer.parseInt(number); 34String valueTwo = text01.getText().toString().replace(",", ""); 35num = Integer.parseInt(valueTwo); 36 text01.setText(String.format("%,d", num) + chengeAtai + ""); 37}
Java
試したこと
String.format内の変数や、()の位置を変更すれば対処出来るんじゃないかと思って試しました。
結果として、数字のボタンを続けて押しても桁が増えず、押されたボタンを基にどんどんと数値が足されていくだけでした。
回答1件
あなたの回答
tips
プレビュー