1

java.sql.time が正しく動作していませんか?

これは私のコードです

         Time lowertime=new Time(date.getTime());
         lowertime.setHours(lowertime.getHours()-11);
         System.out.println(lowertime);
         Time uppertime=lowertime;
         uppertime.setHours(lowertime.getHours()+1);
         System.out.println(uppertime);
         System.out.println(lowertime);

得られた結果

02:11:13
03:11:13
03:11:13

結果は次のようになります。

 02:11:13
 03:11:13
 02:11:13

私はJavaドキュメントとその非推奨を検索しました.1時間または(たとえば58分)の時間範囲を取得する代替手段は何ですか.

私はJava、Hibernate Framework、およびMySqlデータベースを使用しています.Whatsは私にとって最良の選択肢です.

4

1 に答える 1

3
Time uppertime=lowertime;

上記の行により、uppertime と Lowertime は同じオブジェクトへの 2 つの参照です。一方を変更するたびに、もう一方も変更します。これは、実際には単一の一意のオブジェクトであるためです。コピーを作成する必要があります。

Time uppertime = new Time(lowertime.getTime());
于 2013-06-29T07:51:36.280 に答える