teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

追記

2018/01/05 07:57

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -1,3 +1,5 @@
1
+ 原因
2
+ ---
1
3
  for文の条件部が成立しないように見えます。
2
4
  > ```Java
3
5
  for(int i=0; i >= digit - len; i++){
@@ -7,8 +9,22 @@
7
9
 
8
10
  digit - lenは正数ですよね?条件部は**ループを続ける**条件です。
9
11
 
12
+ ついでに
10
13
  ---
14
+ 次の部分はかなり冗長です。
15
+ > ```Java
16
+ String wk;
17
+ int digit;
18
+ wk = ck;
19
+ digit = n;
20
+ > ```
21
+
22
+ Javaでは引数が**値渡し**されるうえに、Stringのインスタンスは**イミュータブル**です。
23
+ メソッド内でwkとnをモロに弄んでも危険性はまずないです。
24
+
25
+ 書くなら
26
+ ---
11
- のように書いた方が簡潔な気がします。
27
+ 以下のように書いた方が簡潔な気がします。
12
28
  ```Java
13
29
  static String padding(String src, int n) {
14
30
  return String.format("%0"+n+"d", Integer.valueOf(src));

3

修正

2018/01/05 07:56

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -11,6 +11,6 @@
11
11
  次のように書いた方が簡潔な気がします。
12
12
  ```Java
13
13
  static String padding(String src, int n) {
14
- return String.format("%0"+String.valueOf(n)+"d", Integer.valueOf(src));
14
+ return String.format("%0"+n+"d", Integer.valueOf(src));
15
15
  }
16
16
  ```

2

追記

2018/01/05 07:35

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -5,4 +5,12 @@
5
5
  }
6
6
  > ```
7
7
 
8
- digit - lenは正数ですよね?条件部は**ループを続ける**条件です。
8
+ digit - lenは正数ですよね?条件部は**ループを続ける**条件です。
9
+
10
+ ---
11
+ 次のように書いた方が簡潔な気がします。
12
+ ```Java
13
+ static String padding(String src, int n) {
14
+ return String.format("%0"+String.valueOf(n)+"d", Integer.valueOf(src));
15
+ }
16
+ ```

1

修正

2018/01/05 07:34

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -1,8 +1,8 @@
1
1
  for文の条件部が成立しないように見えます。
2
- ```Java
2
+ > ```Java
3
3
  for(int i=0; i >= digit - len; i++){
4
4
  wk = "0" + wk;
5
5
  }
6
- ```
6
+ > ```
7
7
 
8
8
  digit - lenは正数ですよね?条件部は**ループを続ける**条件です。