Java/Velocity/MathTool
Содержание
- 1 Math tool: round to a given integer
- 2 Reference Class method in Mathtool
- 3 Velocity MathTool: Add
- 4 Velocity MathTool Divide
- 5 Velocity MathTool: Maximun
- 6 Velocity MathTool Minimum
- 7 Velocity MathTool: Multiply
- 8 Velocity Math Tool: Power
- 9 Velocity Math Tool Random
- 10 Velocity MathTool Random Between
- 11 Velocity Math Tool Round To Integer
- 12 Velocity Math Tool: Subtract
Math tool: round to a given integer
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
4.45678 rounded to 3 places is $math.roundTo(3, "4.45678")
</source>
Reference Class method in Mathtool
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import java.util.ArrayList; import java.util.Collection; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class ProductList {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/calculation.vm"); VelocityContext ctx = new VelocityContext(); Collection products = new ArrayList(); products.add(new Product("Product 1", 112.199)); products.add(new Product("Product 2", 113.991)); products.add(new Product("Product 3", 111.919)); ctx.put("productList", products); ctx.put("math", new MathTool()); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
public class Product {
private String name; private double price; public Product(String aName, double aPrice) { name = aName; price = aPrice; } public String getName() { return name; } public void setName(String name) { this.name = name; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; }
}
- set($totalPrice = 0)
- foreach($product in $productList)
$product.Name $$product.Price #set($totalPrice = $math.add($totalPrice, $product.Price))
- end
Total Price: $$totalPrice
</source>
Velocity MathTool: Add
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
$math.random is a random number
</source>
Velocity MathTool Divide
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
$aNumber / 3.2 = $math.div($aNumber, "3.2")
</source>
Velocity MathTool: Maximun
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
The maximum of $aNumber and 3.2 is $math.max($aNumber, "3.2")
</source>
Velocity MathTool Minimum
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
The minimum of $aNumber and 3.2 is $math.min($aNumber, "3.2")
</source>
Velocity MathTool: Multiply
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
$aNumber * 3.2 = $math.mul($aNumber, "3.2")
</source>
Velocity Math Tool: Power
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
$aNumber ^ 3.2 = $math.pow($aNumber, "3.2")
</source>
Velocity Math Tool Random
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
$math.random is a random number
</source>
Velocity MathTool Random Between
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
$math.random(1, 20) is a random number between 1 and 20
</source>
Velocity Math Tool Round To Integer
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
4.45678 rounded to the nearest integer is $math.roundToInt("4.45678")
</source>
Velocity Math Tool: Subtract
<source lang="java">
import java.io.StringWriter; import java.io.Writer; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.tools.generic.MathTool; public class MathToolExample {
public static void main(String[] args) throws Exception { Velocity.init(); Template t = Velocity.getTemplate("./src/mathTool.vm"); VelocityContext ctx = new VelocityContext(); ctx.put("math", new MathTool()); ctx.put("aNumber", new Double(5.5)); Writer writer = new StringWriter(); t.merge(ctx, writer); System.out.println(writer); }
}
$aNumber - 3.2 = $math.sub($aNumber, "3.2")
</source>