回答編集履歴

5

変数名を修正

2022/03/01 05:41

投稿

jhashimoto
jhashimoto

スコア838

test CHANGED
@@ -21,8 +21,8 @@
21
21
  ```c#
22
22
  string text1 = "1,2,5,8,9";
23
23
  char[] list1 = text1.ToCharArray();
24
- foreach (var s in list1) {
24
+ foreach (var c in list1) {
25
- Console.WriteLine(s);
25
+ Console.WriteLine(c);
26
26
  }
27
27
 
28
28
  /*

4

コードの不足を修正

2022/03/01 05:40

投稿

jhashimoto
jhashimoto

スコア838

test CHANGED
@@ -19,6 +19,7 @@
19
19
  訂正します。ToCharArrayでは、カンマが含まれてしまいます。
20
20
 
21
21
  ```c#
22
+ string text1 = "1,2,5,8,9";
22
23
  char[] list1 = text1.ToCharArray();
23
24
  foreach (var s in list1) {
24
25
  Console.WriteLine(s);

3

誤りを訂正

2022/03/01 01:59

投稿

jhashimoto
jhashimoto

スコア838

test CHANGED
@@ -1,10 +1,10 @@
1
- 質問文から「text1には"1, 2, 5, 8, 9"、text2には"1, 3, 7, 8, 9"が入っている。1文字ずつ処理し、差分を出力したい」と理解しました。
1
+ 質問文から「text1には"1,2,5,8,9"、text2には"1,3,7,8,9"が入っている。1文字ずつ処理し、差分を出力したい」と理解しました。
2
2
 
3
3
  > List<string> list1 = new List<string>() { text1 };
4
4
 
5
- これだと、`list1`は`"1, 2, 5, 8, 9"`の要素1つを持つListになります。デバッガで確認してみてください。
5
+ これだと、`list1`は`"1,2,5,8,9"`の要素1つを持つListになります。デバッガで確認してみてください。
6
6
 
7
- Stringを1文字ずつ処理するには、`ToCharArray`が使えます。
7
+ ~~Stringを1文字ずつ処理するには、`ToCharArray`が使えます。~~
8
8
 
9
9
  ```c#
10
10
  char[] list1 = text1.ToCharArray();
@@ -12,3 +12,47 @@
12
12
  [String.ToCharArray メソッド (System) | Microsoft Docs](https://docs.microsoft.com/ja-jp/dotnet/api/system.string.tochararray?view=net-6.0#system-string-tochararray)
13
13
 
14
14
  他にも修正が必要ですが、コードを書いてみて、詰まったらまた質問してください。
15
+
16
+
17
+ 追記です。
18
+
19
+ 訂正します。ToCharArrayでは、カンマが含まれてしまいます。
20
+
21
+ ```c#
22
+ char[] list1 = text1.ToCharArray();
23
+ foreach (var s in list1) {
24
+ Console.WriteLine(s);
25
+ }
26
+
27
+ /*
28
+ 1
29
+ ,
30
+ 2
31
+ ,
32
+ 5
33
+ ,
34
+ 8
35
+ ,
36
+ 9
37
+ */
38
+ ```
39
+
40
+ 他の回答にあるとおり、`Split`を使う方がいいと思います。
41
+
42
+ ```c#
43
+ string text1 = "1,2,5,8,9";
44
+ string[] list1 = text1.Split(',');
45
+ foreach (var s in list1) {
46
+ Console.WriteLine(s);
47
+ }
48
+
49
+ /*
50
+ 1
51
+ 2
52
+ 5
53
+ 8
54
+ 9
55
+ */
56
+ ```
57
+
58
+

2

誤字の修正

2022/02/28 21:08

投稿

jhashimoto
jhashimoto

スコア838

test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  これだと、`list1`は`"1, 2, 5, 8, 9"`の要素1つを持つListになります。デバッガで確認してみてください。
6
6
 
7
- stringを1文字ずつ処理するには、`ToCharArray`が使えます。
7
+ Stringを1文字ずつ処理するには、`ToCharArray`が使えます。
8
8
 
9
9
  ```c#
10
10
  char[] list1 = text1.ToCharArray();

1

補足

2022/02/28 20:05

投稿

jhashimoto
jhashimoto

スコア838

test CHANGED
@@ -10,3 +10,5 @@
10
10
  char[] list1 = text1.ToCharArray();
11
11
  ```
12
12
  [String.ToCharArray メソッド (System) | Microsoft Docs](https://docs.microsoft.com/ja-jp/dotnet/api/system.string.tochararray?view=net-6.0#system-string-tochararray)
13
+
14
+ 他にも修正が必要ですが、コードを書いてみて、詰まったらまた質問してください。