質問編集履歴

4

内容修正

2022/04/20 02:35

投稿

karin10
karin10

スコア34

test CHANGED
File without changes
test CHANGED
@@ -5,15 +5,12 @@
5
5
 
6
6
  **コード**
7
7
  ```C#
8
- // 省略 //
9
- // values.GetType().ToString() == "System.Object[]"
10
- // values[304].GetType().ToString() == "System.Double"
11
- // values[304] == 2
12
- int value = 0;
8
+ int value = 0;
13
- double test = 2;
9
+ double test = 2.0;
14
- value = (int)test; // value == 2 (型変換成功)
10
+ object[] tests = new object[] {0, 1, 2.0};
11
+ value = (int)test;
15
- value = Convert.ToInt32(values[304]); // value == 2 (型変換成功)
12
+ value = Convert.ToInt32(tests[2]);
16
- value = (int)values[304] ; // (int)values[304]は型'System.InvalidCastException'の例外をスローしました (型変換失敗)
13
+ value = (int)tests[2]; // 型 'System.InvalidCastException' ハンドルされていない例外が test.exe で発生しました
17
-
14
+               // 指定されたキャストは有効ではありません。
18
15
  ```
19
16
 

3

内容修正

2022/04/20 02:03

投稿

karin10
karin10

スコア34

test CHANGED
File without changes
test CHANGED
@@ -8,12 +8,12 @@
8
8
  // 省略 //
9
9
  // values.GetType().ToString() == "System.Object[]"
10
10
  // values[304].GetType().ToString() == "System.Double"
11
- // values[304] == 2,
11
+ // values[304] == 2
12
12
  int value = 0;
13
13
  double test = 2;
14
14
  value = (int)test; // value == 2 (型変換成功)
15
15
  value = Convert.ToInt32(values[304]); // value == 2 (型変換成功)
16
- value = (int)values[304] // (int)values[304]は型'System.invalidCastException'の例外をスローしました (型変換失敗)
16
+ value = (int)values[304] ; // (int)values[304]は型'System.InvalidCastException'の例外をスローしました (型変換失敗)
17
17
 
18
18
  ```
19
19
 

2

内容修正

2022/04/20 01:50

投稿

karin10
karin10

スコア34

test CHANGED
File without changes
test CHANGED
@@ -13,7 +13,7 @@
13
13
  double test = 2;
14
14
  value = (int)test; // value == 2 (型変換成功)
15
15
  value = Convert.ToInt32(values[304]); // value == 2 (型変換成功)
16
- value = (int)values[304] // (int)values[304]は型'System.IndexOutOfRangeException'の例外をスローしました (型変換失敗)
16
+ value = (int)values[304] // (int)values[304]は型'System.invalidCastException'の例外をスローしました (型変換失敗)
17
17
 
18
18
  ```
19
19
 

1

内容修正

2022/04/20 01:42

投稿

karin10
karin10

スコア34

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,6 @@
1
1
  **内容**
2
2
  配列に格納されているdouble型のデータをint型へキャストすると失敗する原因が分かりませんでした。
3
+ 普通のdouble型の値はint型にキャスト変換できたり、
3
4
  Convert.ToInt32()では問題なくint型に変換できました。
4
5
 
5
6
  **コード**