Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

AとBのインスタンスを入れ替えたい

PeriodコンストラクタからDayクラスのインスタンスを2つ読み込み、それぞれの年月日を読み込み、fromの方がtoよりも昔ならばfromとtoのインスタンスを入れ替えるクラスPeriodを作成したいのですが、どうも、if分を通り抜けてしまって、fromの方が昔でも反転しません。
改善策を教えていただけると幸いです。
以下、コードを記述します。
public class Period{
 private static Day from;
 private static Day to;
 private static Day have;

Period(Day f, Day f){
 from = f;
 to = t;
}

public static void main(String[ ] args){

if(to.getYear( ) < from.getYear( )){
 Day have = new Day(from);
 Day from = to;
 Day to = have;
}
if(to.getYear( ) == from.getYear( )){
 if(to.getMonth( ) < from.getMonth( )){
 Day have = new Day(from);
 Day from = to;
 Day to = have;
}
}
}
}

public String toString( ){
 return String.format(from.getYear( )+"年"+from.getMonth( )+"月"+from.getDate( )+"日"+"〜"+ to.getYear( )+"年"+to.getMonth( )+"月"+to.getDate( )+"日");

1

回答

28660

閲覧

1件の回答

評価

0

ifが思う通りに動かない場合は、ifの判定式をそのまま出力してみるんだよ
それがtrueと出ればifに入るし、falseなら入らない
falseならなんでfalseなのかを、考えてみるんだ

回答する

ログインしていません。

ログインしなくても回答はできますが、ログインすると、質問・回答の管理、更新があった場合のメールでの通知を受けることができます。 アカウントをお持ちでない方は会員登録を行ってください。

ユーザ名匿名