net.sourceforge.jweb.jstl.MathUtil Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jweb-common Show documentation
Show all versions of jweb-common Show documentation
本项目主要弥补在使用mybatis3+springmvc+jquery easyui快速搭建web应用系统是遇到的框架不足.
主要工作包括:
1,扩展了ApplicationContextAware,通过单例注入spring容器,提供spring容器外的bean获取方法
2,扩展了apache shiro框架,统一了安全结构
3,扩展了mybatis3拦截器,在两个拦截器中自动完成分页注入,实现内存分页。
4,分页设计数据库方言
5,提供了一个easyuigrid的模型
6,提供了java泛型的jstl
7, xml工具包等一些小工具
package net.sourceforge.jweb.jstl;
public class MathUtil {
private MathUtil(){}
public static double e(){
return Math.E;
}
public static double pi(){
return Math.PI;
}
/**
* 求两个数的最小公倍数
* @param n1 整型数1
* @param n2 整型数2
* @return 两个数的最大公约数
*/
public static int GCD(int num1, int num2){
if (num2 == 0) return 1;
int residue = num1 % num2;
if(residue==0) return num2;
return GCD(num2,residue);
}
/**
* 找一个整型数组的最大公约数
*
* @param arrayInt
* 一个整型的数组
* @return 最大公约数
* 如果没有找到,将返回0
*/
public static int GCD(int[] arrayInt){
int length=arrayInt.length;
if(length==1) return arrayInt[0];
if(length==2) return GCD(arrayInt[0],arrayInt[1]);
int temp=GCD(arrayInt[0],arrayInt[1]);
for(int i=2;i>=1;
ret++;
};
return ret;
}
/**
* 求一个正整数能被x整除几次
* @param val 被除数
* @param x 除数
* @return 正除结果
*/
public static int approximateLogx(int val,int x){
if(val<=x||val<0||x<=0) return 0;
if(x==1) return val;
int ret=0;
while(val>=x){
val/=x;
ret++;
}
return ret;
}
public static Integer mode(Integer a,Integer b){
if(b==0) return a;
return a%b==0? a/b:a/b+1;
}
public static Integer parseInt(String source){
try {
return Integer.parseInt(source);
} catch (NumberFormatException e) {
e.printStackTrace();
return 0;
}
}
public static Short parseShort(String source){
try {
return Short.parseShort(source);
} catch (NumberFormatException e) {
e.printStackTrace();
return 0;
}
}
public static Float parseFloat(String source){
try {
return Float.parseFloat(source);
} catch (NumberFormatException e) {
e.printStackTrace();
return 0f;
}
}
public static Long parseLong(String source){
try {
return Long.parseLong(source);
} catch (NumberFormatException e) {
e.printStackTrace();
return 0l;
}
}
public static Double parseDouble(String source){
try {
return Double.parseDouble(source);
} catch (NumberFormatException e) {
e.printStackTrace();
return 0d;
}
}
}