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

質問編集履歴

1

解決方法の追記

2017/06/21 05:57

投稿

olee46
olee46

スコア32

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
  ```