Search code examples
javafeedbackuser-feedbackoptimistic

Is this a good first project for my low Java skill? *Age Detector*


I am Andrew, I just started learning Java and made a code. It took me about two hour but it works well. It basically allows you to input your gender, and then your age, it then tells you if you are old or not, with a bunch of different set messages. It's kinda basic and useless but its my first project :p Here it is.

import java.util.Scanner;
class main
{
public static void main(String[] args)
{   
    while(true){

Scanner User = new Scanner(System.in);
double gender;
System.out.println("Enter Your Gender. 1 = Men 2= Women");
gender = User.nextDouble();
if(gender<1 || gender>2 || gender<2 && gender>1)
{   
System.out.println("That's a gender... Enter Your Gender. 1 = Men 2= 
Women");
gender = User.nextDouble(); 
}

{
if(gender>1 && gender<3)
{System.out.println("You are a Women");
double age;
System.out.println("Enter Your Age.");
age = User.nextDouble();

    if(age<0){System.out.println("You Arn't Even Born...");}
    else{
    if(age>0 && age<13){System.out.println("You are so young you shouldn't 
be doing this!");}
    else{
    if(age>12 && age<21){System.out.println("You're really young!");}
    else{
    if(age>20 && age<25){System.out.println("These are the best years!");}
    else{
    if(age>24 && age<46){System.out.println("There is still a lot more in 
store for you!");}
    else{
    if(age>45 && age<61){System.out.println("Enjoy your life, while you 
still have many years left");}
    else{
    if(age>60 && age<71){System.out.println("Life is starting to fade away, 
Live it to the fullest!");}
    else{
    if(age>70 && age<81){System.out.println("I would start preparing for the 
worst...");}
    else{
    if(age>80 && age<101){System.out.println("You might want to say your 
final goodbyes...");}
    else{
    if(age>100){System.out.println("How are you not dead yet? WHAT IS YOUR 
SECRET!!!");}
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
if(gender<2 && gender>0)
{System.out.println("You are a Man");
double agetwo;
System.out.println("Enter Your Age.");
agetwo = User.nextDouble();

    if(agetwo<0){System.out.println("You Arn't Even Born...");}
    else{
    if(agetwo>0 && agetwo<8) {System.out.println("You are so young you 
shouldn't be doing this!");}
    else{
    if(agetwo>7 && agetwo<21) {System.out.println("You're really young!");}
    else{
    if(agetwo>20 && agetwo<25){System.out.println("You are still really 
young!");}
    else{
    if(agetwo>24 && agetwo<31){System.out.println("Enjoy these golden 
days!");}
    else{
    if(agetwo>30 && agetwo<46){System.out.println("Life is still burning as 
bright as ever!");}
    else{
    if(agetwo>45 && agetwo<66){System.out.println("There is still gas in the 
can!");}
    else{
    if(agetwo>65 && agetwo<71){System.out.println("Live every day to the 
fullest, you still have many left!");}
    else{
    if(agetwo>70 && agetwo<85){System.out.println("There are preperations 
you should make");}
    else{
    if(agetwo>84 && agetwo<95){System.out.println("Life may end any day, Be 
ready for it");}    
    else{
    if(agetwo>94){System.out.println("You shouldn't be alive.... Tell me 
your secret...");}
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

            }
        }
    }
}

Solution

  • good but for your next project:

    1- you can declare Scanner in class instead of method. you need declare it once not every time in while loop.

    2- the variable gender could be declare as boolean or int

    3- you can use if(gender == 2) instead of if(gender>1 && gender<3)

    4- you can use else if{ instead of else{ if{

    5- you didn't need to declare age variable two times. you can do it once.

    6- code indent is very useful (try to use it)

    for example

    public void test(){
        if(condition){
            //some code here 
        } else {
            //some code here
        }
    }
    

    and lots of things that you can learn in clean code robert cecil martin