学习JAVA第三、四天!完成了,三个作业!拷贝出来。

题目:

1、   新建java项目,实现一个类Person,包含属性、多个构造器(构造方法)、自有方法。

设置Person类,属性有:姓名,年龄,性别,工号,set、get方法,要求:创建对象,并写一个函数进行自我介绍,输出:我叫XXX,性别X,工号XXX,今年X岁, 至2026年X岁。

(俩个类:firstQuestion.java,Person.java)

firstQuestion.java

package firstQuestion;
import java.util.Scanner;
import java.util.Calendar;


public class firstQuestion {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Person p = new Person();
		Scanner sc = new Scanner(System.in);
		
		System.out.print("输入姓名:");
		p.setName(sc.next());
		System.out.print("输入年龄:");
		p.setAge(sc.nextInt());
		System.out.print("输入ID:");
		p.setId(sc.nextInt());
		System.out.print("输入性别:");
		p.setSex(sc.next());
		
		mySelf(p.getAge(),p.getId(),p.getName(),p.getSex());
		sc.close();
	}
	
	public static void mySelf(int age,int id ,String name,String sex){
		
		Calendar c = Calendar.getInstance();
		int year = c.get(Calendar.YEAR);
		System.out.println("我叫:"+name+",性别:"+sex+",工号"+id+",今年"+age+"岁, 至2026年"+(2026-year+age)+"岁");
		
	}

}


Person.java

package firstQuestion;

public class Person {
	
	public String name; //姓名
	public int age;//年龄
	public String sex;//性别
	public int id;//工号
	
	/*
	 * 构造函数
	 */
	public void  setName(String name){
		this.name = name;
	}
	
	public void  setAge(int age){
		this.age = age;
	}
	
	public void  setSex(String sex){
		this.sex = sex;
	}
	
	public void  setId(int id){
		this.id = id;
	}
	
	public String  getName(){
		return name;
	}
	
	public int  getAge(){
		return age;
	}
	
	public String  getSex(){
		return sex;
	}
	
	public int  getId(){
		return id;
	}
}



2、   实现一个类Rectangle(长方形),属性有长,宽,面积。

要求:创建两个长宽不一的对象r1,r2,编写一个方法,输出两者的面积之差,差值不能为负值。

(俩个类:secondQuestion.java,Rectangle.java)

secondQuestion.java

package secondQuestion;
import java.util.Scanner;

public class secondQuestion {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Rectangle r1 = new Rectangle();
		Rectangle r2 = new Rectangle();
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入第一个长方形的长和宽!");
		System.out.print("长:");
		r1.setL(sc.nextDouble());
		System.out.print("宽:");
		r1.setK(sc.nextDouble());
		System.out.println("请输入第二个长方形的长和宽!");
		System.out.print("长:");
		r2.setL(sc.nextDouble());
		System.out.print("宽:");
		r2.setK(sc.nextDouble());
		comPare(r1.getArea(),r2.getArea());
		sc.close();
		
	}

	public static void comPare(double s1,double s2){
		if (s1 > s2){
			System.out.println("第一个大于第二个,面积差"+(s1-s2));
		}
		else{
			System.out.println("第二个大于第一个,面积差"+(s2-s1));
		}
	}
}


Rectangle.java

package secondQuestion;

public class Rectangle {

		public double s;
		public double l;
		public double k; 
		
		public double getL(){
			return l;
		}
		
		public double getK(){
			return k;
		}
		
		public void setL(double l){
			this.l = l;
		}
		
		public void setK(double k){
			this.k = k;
		}
		
		public double getArea(){
			return l *  k;
		}
		
		
}


3、   实现一个类MyAccount(账户),属性有:账号账户姓名 地址 存款余额 利率。方法:存款 取款 查询余额 计算利息(会有涉及8种基本类型,可以提前熟悉),带参和不带参的构造方法,带参的存取款方法等,要求创建对象并输出账户详情;存进1000元后的账户详情;取出500元的账户详情,余额不足要给出提示;修改利率后的账户详情

(三个类:thirdQuestion.java,MyAccount.java,lilvjs.java)

thirdQuestion.java

package thirdQuestion;
import java.util.Scanner;
import java.math.BigDecimal;

public class thirdQuestion {

	/**
	 * @param args
	 */
	
	static MyAccount man = new MyAccount();
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		//基本信息配置
		man.setId(123456);
		man.setName("陈浩");
		man.setAddr("北京天安门");
		man.setLilv("0.0001");
		man.setYuE("88888");
		
		
		menu();

		
	}
	//菜单选项
	public static void menu(){
		
			System.out.println("菜单选项:\r\n" +
					"1.账户基本信息查看\r\n" +
					"2.取款\r\n" +
					"3.存款\r\n" +
					"4.利率计算\r\n" +
					"5.退出\r\n" +
					"请输入选项前数字进行选择:");
			Scanner sc = new Scanner(System.in);
			int x = 0;
			try{
				 x = sc.nextInt();
			}catch(Exception e){
				//System.out.println("请输入数字!!");
			}
			
			
			switch(x){
			case 1:info();break;
			case 2:qukuan();break;
			case 3:cunkun();break;
			case 4:lljs();break;
			case 5:exit();break;
			default:System.out.printf("输入无效,请重新输入!");menu();
			}
			sc.close();
		
	}
	//个人信息查询
	public static void info(){
		System.out.println("账户的基本信息:\r\n" +
				"姓名:"+man.getName()+
				"\r\n账号:"+man.getId()+
				"\r\n地址:"+man.getAddr()+
				"\r\n余额:"+man.getYuE()+
				"\r\n"
				);
		System.out.println("查询完成\r\n" +
				"1:返回菜单。2:直接退出\r\n" +
				"请输入选项:");
		Scanner sc = new Scanner(System.in);
		int x = 0;
		try{
			 x = sc.nextInt();
		}catch(Exception e){
			System.out.println("请输入数字!!");
		};
		queren(x);
		sc.close();
	}
	
	//取款
	public static void qukuan(){
		System.out.println("当前账户余额为:" +man.getYuE()+
				"\r\n请输入您要取款的金额:");
		
		Scanner sc = new Scanner(System.in);
		double x = 0;
		try{
			 x = sc.nextDouble();
		}catch(Exception e){
			System.out.println("请输入有效数字!!取款失败!");
			exit();
		}
		BigDecimal s1 = new BigDecimal(man.getYuE());
		BigDecimal s2 = new BigDecimal(Double.toString(x));
		int r = s1.subtract(s2).compareTo(BigDecimal.ZERO);
		if(r>0||r==0){
			man.setYuE(s1.subtract(s2).toString());
			System.out.println("取款成功!\r\n" +
					"当前余额为:"+man.getYuE()+
					"\r\n1:返回菜单。2:直接退出\r\n" +
					"请输入选项:");	
			
			int x1 = 0;
			try{
				 x1 = sc.nextInt();
			}catch(Exception e){
				//System.out.println("请输入数字!!");
			};
			
			queren(x1);

		}
		else{
			System.out.println("对不起,余额不足,取款失败!\r\n" +
					"\r\n1:返回菜单。2:直接退出\r\n" +
					"请输入选项:");	
			int x1 = 0;
			try{
				 x1 = sc.nextInt();
			}catch(Exception e){
				//System.out.println("请输入数字!!");
			};
			queren(x1);
			
		}
		sc.close();
		
		
	}
	
	//存款
	public static void cunkun(){

		System.out.println("当前账户余额为:" +man.getYuE()+
				"\r\n请输入您要存款的金额:");
		
		Scanner sc = new Scanner(System.in);
		double x = 0;
		try{
			 x = sc.nextDouble();
		}catch(Exception e){
			System.out.println("请输入有效数字!!存款失败!");
			exit();
		}
		BigDecimal s1 = new BigDecimal(man.getYuE());
		BigDecimal s2 = new BigDecimal(Double.toString(x));
		man.setYuE(s1.add(s2).toString());
		System.out.println("存款成功!\r\n" +
				"当前余额为:"+man.getYuE()+
				"\r\n1:返回菜单。2:直接退出\r\n" +
				"请输入选项:");	
		
		int x1 = 0;
		try{
			 x1 = sc.nextInt();
		}catch(Exception e){
			//System.out.println("请输入数字!!");
		};
	
		queren(x1);
		sc.close();
		
	}
	
	public static void lljs(){
		Scanner sc = new Scanner(System.in);
		System.out.print("当前本金为:" +man.getYuE()+
			"\r\n请以小数的形式输入存款利率:");
		double lv = 0;
		try{
			 lv = sc.nextDouble();
		}catch(Exception e){
			System.out.println("请输入有效利率!!存款失败!");
			exit();
		}
		//BigDecimal r = new BigDecimal(Double.toString(lv));
		System.out.print("请以整数数的形式输入存款年限:");
		int n = 1 ;
		try{
			 n = sc.nextInt();
		}catch(Exception e){
			System.out.println("请输入有效年限!!存款失败!");
			exit();
		}
		man.setLilv(Double.toString(lv));
		man.setNian(n);
		
		lilvjs l = new lilvjs();
		l.setMoney(man.getYuE());
		l.setLilv(man.getLiLv());
		l.setNian(man.getNian());
		l.getYe();
		
		System.out.println("计算成功!\r\n" +
				"\r\n1:返回菜单。2:直接退出\r\n" +
				"请输入选项:");	
		
		int x1 = 0;
		try{
			 x1 = sc.nextInt();
		}catch(Exception e){
			//System.out.println("请输入数字!!");
		};
		sc.close();
		queren(x1);
		

	}
	public static void exit(){
		System.out.println("谢谢使用,再见!");
	}
	public static void queren(int x){
		if (x == 1){
			menu();
		}
		else if (x == 2){
			exit();
		}
		else{
			System.out.println("输入错误!");
			exit();
		}
	}

}


MyAccount.java

package thirdQuestion;

public class MyAccount {
	
	public int id;
	public String name;
	public String addr;
	public String yuE;
	public String liLv;
	public int nian;
	
	public void setId(int id){
		this.id = id;
	}
	
	public int getId(){
		return id;
	}
	
	public void setName(String name){
		this.name = name;
	}
	
	public String getName(){
		return name;
	}
	
	public void setAddr(String addr){
		this.addr = addr;
	}
	
	public String getAddr(){
		return addr;
	}
	
	public void setYuE(String yuE){
		this.yuE = yuE;
	}
	
	public String getYuE(){
		return yuE;
	}
	
	public void setLilv(String liLv){
		this.liLv = liLv;
	}
	
	public String getLiLv(){
		return liLv;
	}

	public int getNian() {
		return nian;
	}

	public void setNian(int nian) {
		this.nian = nian;
	}
	
	
}


lilvjs.java

package thirdQuestion;

import java.math.BigDecimal;


public class lilvjs {
	
	public String money,lilv;
	public int nian;
	
	public String getMoney() {
		return money;
	}


	public void setMoney(String money) {
		this.money = money;
	}


	public String getLilv() {
		return lilv;
	}


	public void setLilv(String lilv) {
		this.lilv = lilv;
	}


	public int getNian() {
		return nian;
	}


	public void setNian(int nian) {
		this.nian = nian;
	}

	//	Scanner sc = new Scanner(System.in);
//	System.out.print("请输入本金:");
//	money = sc.next();
//	System.out.print("请输入利息:");
//	lilv = sc.next();
//	System.out.print("请输入年限:");
//	nian = sc.nextInt();
	


	
	public void getYe(){
		
		
		BigDecimal mon = new BigDecimal(money);
		BigDecimal Lil = new BigDecimal(lilv);
		BigDecimal one = new BigDecimal("1");
		
		System.out.println(
				"本金:"+
				money+
				"\r\n利率:"+
				lilv+
				"\r\n在"+			
				nian+
				"年后,变成了:"+
				mon.multiply((one.add(Lil).pow(nian)))
				);
	}



	
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值