?? plaintextsalesformatter.java
字號:
import java.util.*;
/**
* The class PlainTextSalesFormatter implements the interface <code>SalesFormatter</code>.
* This class is implemented as a singleton so a new object will not be created
* every time the plain-text format is used.
*
* @author 張維
* @version 1.0.0
* @see SalesFormatter
* @see Order
* @see Product
* @see OrderItem
* @see Sales
* @see Catalog
* @see Coffee
* @see CoffeeBrewer
*/
public class PlainTextSalesFormatter implements SalesFormatter {
/* Line separator */
private static final String NEW_LINE = System.getProperty("line.separator");
/* The single instance of class PlainTextSalesFormatter */
private static PlainTextSalesFormatter singletonInstance = null;
/**
* Returns the single instance of class <code>PlainTextBorrowersFormatter</code>
*
* @return the single instance of class <code>PlainTextSalesFormatter</code>
*/
public static PlainTextSalesFormatter getSingletonInstance( ) {
if (singletonInstance == null) {
singletonInstance = new PlainTextSalesFormatter( );
}
return singletonInstance;
}
/**
* The constructor is declared private so other classes cannot
* create an instance of this class.
*/
private PlainTextSalesFormatter( ) {
}
/**
* Returns a plain text representation of the specified sales
*
* @param sales the Sales object that contains the orders that have been sold.
* @return a plain text representation of the specified {@link Sales} object.
*/
public String formatSales(Sales sales) {
String s = "";
int i = 0;
for(Iterator iterator = sales.getOrdersIterator( ); iterator.hasNext( );) {
Order order = (Order)iterator.next( );
s = s + "------------------------" + NEW_LINE + "Order " + ++i + NEW_LINE + NEW_LINE;
for(Iterator iterator1 = order.getItemsIterator( ); iterator1.hasNext( );) {
OrderItem orderitem = (OrderItem)iterator1.next( );
s = s + orderitem.getQuantity( ) + " " + orderitem.getProduct( ).getCode( )
+ " " + orderitem.getProduct( ).getPrice( ) + NEW_LINE;
}
s = s + NEW_LINE + "Total = " + order.getTotalCost( ) + NEW_LINE;
}
return s;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -