去除临时变量
去除frequentRenterPoints 前
private String _name;
private Vector _rentals = new Vector();
public Customer(String _name) {
this._name = _name;
}
public void addRental(Rental arg) {
_rentals.addElement(arg);
}
public String getName() {
return _name;
}
//生成详情单
public String statement() {
int frequentRenterPoints = 0;
Enumeration rentals = _rentals.elements();
String result = "Rental REecord for " + getName() + "\n";
while (rentals.hasMoreElements()) {
Rental each = (Rental) rentals.nextElement();
//积分累加条件 新版本的片子,借的时间大于1天
frequentRenterPoints++;
//为两天的新发行版租金增加租金
frequentRenterPoints += each.getFrequentRenterPoints();
//展示租金的数字
result+="\t "+each.get_movie().getTitle()+" \t "+String.valueOf(each.getCharge())+" \n ";
}
//添加页脚行
result += "Amount owed is " + String.valueOf(getTotalCharge()) + " \n";
result+="You earned "+String.valueOf(frequentRenterPoints)+" frequent renter points";
return result;
}
private double getTotalCharge() {
double result = 0;
Enumeration rentals = _rentals.elements();
while (rentals.hasMoreElements()) {
Rental each = (Rental) rentals.nextElement();
result += each.getCharge();
}
return result;
}
去除后
package com.refactor_code.demo1;
import java.util.Enumeration;
import java.util.Vector;
/**
* @author lhzlhz
* @create 2020/4/6
*/
public class Customer {
private String _name;
private Vector _rentals = new Vector();
public Customer(String _name) {
this._name = _name;
}
public void addRental(Rental arg) {
_rentals.addElement(arg);
}
public String getName() {
return _name;
}
//生成详情单
public String statement() {
Enumeration rentals = _rentals.elements();
String result = "Rental REecord for " + getName() + "\n";
while (rentals.hasMoreElements()) {
Rental each = (Rental) rentals.nextElement();
//展示租金的数字
result+="\t "+each.get_movie().getTitle()+" \t "+String.valueOf(each.getCharge())+" \n ";
}
//添加页脚行
result += "Amount owed is " + String.valueOf(getTotalCharge()) + " \n";
//result+="You earned "+String.valueOf(frequentRenterPoints)+" frequent renter points";
result+="You earned "+String.valueOf(getTotalFrequentRenterPoints())+" frequent renter points";
return result;
}
private double getTotalCharge() {
double result = 0;
Enumeration rentals = _rentals.elements();
while (rentals.hasMoreElements()) {
Rental each = (Rental) rentals.nextElement();
result += each.getCharge();
}
return result;
}
private int getTotalFrequentRenterPoints() {
int frequentRenterPoints = 0;
Enumeration rentals = _rentals.elements();
while (rentals.hasMoreElements()) {
Rental each = (Rental) rentals.nextElement();
//积分累加条件 新版本的片子,借的时间大于1天
frequentRenterPoints++;
//为两天的新发行版租金增加租金
frequentRenterPoints += each.getFrequentRenterPoints();
}
return frequentRenterPoints;
}
}
网友评论