广工java第一次作业

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

import java.io.IOException;

import java.util.Scanner;

/**

*16. 写一个Person类,定义人的基本属性:name(姓名)、age(年龄)、gender(性别)、partner (配偶)。

要求至少为Person类写一个marry(Person p)方法,来判断两个人是否可以结婚。如果可以结婚,将其partner属性赋值为其配偶。

结婚必须满足以下3个条件。

必须是异性,同性暂时不允许结婚

有配偶者不能结婚,犯重婚罪。

要达到年龄方可结婚:男方23岁以上,女性21岁以上。

* @author Administrator

*

*/

class MemberOfPerson{

public String name;

public int age;

public String gender; //性别

public String partner;

}

public class Person {

/**

* 判断两个人的性别是否相同

* @param s 对象person的性别

* @param s2 对象person2的性别

* @return 返回一个boolean值

*/

private static boolean isSexDifferent(String s,String s2){

if((s.equals("男") && s2.equals("女"))||(s.equals("女") && s2.equals("男"))){

return true;

}

else if((s.equals("男") &&s2.equals("男"))||(s.equals("女") && s2.equals("女"))){ return false;

}

else{

System.out.println("你输入的性别数据有误");

return false;

}

}

/**

* 首先判断判断这个人的性别,之后再判断他们的年龄要求是否符合

* @param s 性别

* @param age 接受实参传过来的年龄值

* @return 返回一个boolean值

*/

private static boolean isAgeEnough(String s,int age){

if(s.equals("男")){

if(age > 23){

return true;

}

else{

return false;

}

}

else if(s.equals("女")){

if(age > 21){

return true;

}

else{

return false;

}

}

else{

System.out.println("你输入的性别表示符号有错,无法判断是男是女");

return false;

}

}

/**

* 判断是否已有配偶

* @param partner

* @return

*/

private static boolean isNotMarry(String partner){

if(partner.equals("true")){

System.out.println("\n有人已经结婚,如果此人再次结婚则犯重婚罪");

return false;

}

else if(partner.equals("false")){

return true;

}

else{

System.out.println("你输入的数据有错");

return false;

}

}

public static void main(String[] args)throws IOException {

MemberOfPerson person=new MemberOfPerson();

MemberOfPerson person2=new MemberOfPerson();

Scanner sc =new Scanner(System.in);

System.out.println("请按顺序输入person各属性值,分别为name,age,gender,partner."

+ "\n其中gender值只能为“男”或“女”,partner输入的值只能为“true”或“false”,有伴侣就输true,"

+ "没有就输false。\n否则将出错,该处理方法暂时有点问题,以后会改善这个问题");

= sc.next();

person.age = sc.nextInt();

person.gender = sc.next();

person.partner =sc.next();

System.out.println("请按顺序输入person2各属性值,分别为name,age,gender,partner."

+ "\n其中gender值只能为“男”或“女”,partner输入的值只能为“true”或“false”,有伴侣就输true,"

+ "没有就输false。\n否则将出错,该处理方法暂时有点问题,以后会改善这个问题");

= sc.next();

person2.age = sc.nextInt();

person2.gender = sc.next();

person2.partner = sc.next();

System.out.println("\n\n第一个人的属性:姓名:"++"\t年龄:"+person.age+"\t性别:"+person.gender+"\t结婚与否:"+person.partner);

System.out.println("第一个人的属性:姓名:"++"\t年龄:"+person2.age+"\t性别:"+person2.gender+"\t结婚与否:"+person2.partner);

boolean b1 = isSexDifferent(person.gender,person2.gender);

boolean b2 = isAgeEnough(person.gender,person.age);

boolean b3 = isAgeEnough(person2.gender,person2.age);

boolean b4 = isNotMarry(person.partner);

boolean b5 = isNotMarry(person2.partner);

if(b1==true&&b2==true&&b3==true&&b4==true&&b5==true){

System.out.println("\n这两个人可以结婚");

}

else{

System.out.println("\n这两个人不满足结婚的条件");

}

}

相关文档
最新文档