質問編集履歴
1
解決方法の追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -71,4 +71,54 @@
|
|
71
71
|
|
72
72
|
}
|
73
73
|
}
|
74
|
+
```
|
75
|
+
|
76
|
+
追記: 解決方法
|
77
|
+
-
|
78
|
+
回答でいただいたように、ミリ秒までformatすると、無事equalsでtrueが返されました
|
79
|
+
なお、Calendar.MONTHが0-11なことは考慮する必要がなく、あえてcal2.add...を入れる必要はありませんでした
|
80
|
+
最終的なコードは以下のようになりました
|
81
|
+
```java
|
82
|
+
package com.example.orisa.mycal1;
|
83
|
+
|
84
|
+
import java.text.ParseException;
|
85
|
+
import java.text.SimpleDateFormat;
|
86
|
+
import java.util.Calendar;
|
87
|
+
import android.support.v7.app.AppCompatActivity;
|
88
|
+
import android.os.Bundle;
|
89
|
+
import android.widget.TextView;
|
90
|
+
|
91
|
+
public class MainActivity extends AppCompatActivity {
|
92
|
+
|
93
|
+
//部品の変数
|
94
|
+
TextView tv;
|
95
|
+
@Override
|
96
|
+
protected void onCreate(Bundle savedInstanceState) {
|
97
|
+
super.onCreate(savedInstanceState);
|
98
|
+
setContentView(R.layout.activity_main);
|
99
|
+
|
100
|
+
//部品の取得
|
101
|
+
tv = (TextView)findViewById(R.id.tv);
|
102
|
+
|
103
|
+
Calendar cal1 = Calendar.getInstance();
|
104
|
+
|
105
|
+
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss:SSS");
|
106
|
+
String str1 = sdf.format(cal1.getTime());
|
107
|
+
|
108
|
+
Calendar cal2 = Calendar.getInstance();
|
109
|
+
|
110
|
+
try{
|
111
|
+
cal2.setTime(sdf.parse(str1));
|
112
|
+
|
113
|
+
if(cal1.equals(cal2)){
|
114
|
+
tv.setText("true");
|
115
|
+
} else {
|
116
|
+
tv.setText("false");
|
117
|
+
}
|
118
|
+
|
119
|
+
}catch (ParseException e){
|
120
|
+
tv.setText("exception");
|
121
|
+
}
|
122
|
+
}
|
123
|
+
}
|
74
124
|
```
|