一个模拟信用卡支出系统的小Java程序
一.主类代码如下:
public class Customer
{
private long accoutnumber;
private double overage;
private double income;
private double buyoncredit;
private double percredit;
public void setAccoutNumber(long
imAccoutNumber)
{
accoutnumber=imAccoutNumber;
}
public long getAccoutNumber()
{
return accoutnumber;
}
public void setOverage(double imOverage)
{
overage=imOverage;
}
public double getOverage()
{
return overage;
}
public void setIncome(double imIncome)
{
income=imIncome;
}
public double getIncome()
{
return income;
}
public void setBuyOnCredit(double
imBuyOnCredit)
{
buyoncredit=imBuyOnCredit;
}
public double getBuyOnCredit()
{
return buyoncredit;
}
public void setPercredit(double
imPercredit)
{
percredit=imPercredit;
}
public double getPercredit()
{
return percredit;
}
}
二.测试类代码如下:
import java.util.Scanner;
public class CustomerTest
{
public static void main(String args[])
{
Customer customer=new Customer();
Scanner input=new Scanner(System.in);
double newoverage;
int counter=1;
Long depositAccoutNumber;
double depositOverage;
double depositIncome;
double depositBuyOnCredit;
double depositPercredit;
System.out.printf("\nEnter the accoutnumber
for customer:");
depositAccoutNumber=input.nextLong();
System.out.printf("Enter the overage for customer:");
depositOverage=input.nextDouble();
System.out.printf("Enter the income for customer:");
depositIncome=input.nextDouble();
System.out.printf("Enter the buyoncredit for customer:");
depositBuyOnCredit=input.nextDouble();
System.out.printf("Enter the percredit for customer:");
depositPercredit=input.nextDouble();
System.out.printf("\n");
while(depositAccoutNumber!=-1)
{
customer.setAccoutNumber(depositAccoutNumber);
System.out.printf("customer%d:\n accoutnumber:
%d\n",counter,customer.getAccoutNumber());
customer.setOverage(depositOverage);
System.out.printf(" overage:
%.2f$\n",customer.getOverage());
customer.setIncome(depositIncome);
System.out.printf(" income:
%.2f$\n",customer.getIncome());
customer.setBuyOnCredit(depositBuyOnCredit);
System.out.printf(" buyoncredit:
%.2f$\n",customer.getBuyOnCredit());
customer.setPercredit(depositPercredit);
System.out.printf(" percredit:
%.2f$\n",customer.getPercredit());
newoverage=depositOverage+depositIncome-depositBuyOnCredit;
if(newoverage>depositPercredit)
System.out.printf(" Pay Attention:Credit limit
exceeded!\n");
++counter;
System.out.printf("\nEnter the accoutnumber
for customer:");
depositAccoutNumber=input.nextLong();
if(depositAccoutNumber==-1);
else
{
System.out.printf("Enter the overage for customer:");
depositOverage=input.nextDouble();
System.out.printf("Enter the income for customer:");
depositIncome=input.nextDouble();
System.out.printf("Enter the buyoncredit for customer:");
depositBuyOnCredit=input.nextDouble();
System.out.printf("Enter the percredit for customer:");
depositPercredit=input.nextDouble();
System.out.printf("\n");
}
}
}
}
三.对程序代码的说明:
accoutnumber 帐号
overage 透支限度
income 本月收入
buyoncredit 本月信用卡支出
percredit 信用卡原有存款
运行程序后将判断该用户是否透支,并输出本月的消费信息。