我需要以这样的方式设计Employee类,以便以下代码显示12000;没有运行时错误,这是我犯的逻辑错误,无法识别。
这是Java代码
class Employeetester{
public static void main(String[] args){
Employee a=new Employee();
a.name="Mohammad Java Chowdhury";
a.salary=10000;
a.increaseSalary(20.0); //percentage
System.out.println(a.salary);
}
}
这是我声明方法的类文件。
public class Employee{
String name;
double salary;
double exchange;
public double increaseSalary(double salary){
salary=salary+(salary*(20.0/100.0));
return salary;
}
}
输出显示10000。
我对这个话题很陌生,不便之处,敬请谅解
答案 0 :(得分:3)
为方法的参数使用适当的名称。此外,还有一种更简单的算法:
double increaseSalary( double pct ) {
return salary * ( 1. + (pct/100.) );
}
答案 1 :(得分:2)
将薪水增加20%
的另一种方法是将当前薪水除以100
,这将给您1%
并乘以您要增加薪水的百分比。像这样:
salary = salary + (salary / 100.0) * percentage.
在您的情况下,percentage
是20。
此外,您还必须将salary
区分为方法参数和类字段。使用this
关键字来引用类字段,或更改方法参数的名称:
public double increaseSalary(double salaryArg){
salary=salaryArg+(salaryArg*(20.0/100.0));
return salary;
}