Java常用的公共方法
--获取规字符串中的指定名称的某个字段值
1、public String getValueByName(String params,String name)
--用于通过表单选中的复选框获取它的值(js的方法)
2、function getSelectedMasterKeys()
--获取当前年
--汇总指定列的 总和
4、public String getListColumnSum(List list,String coulumName,int point)
--保留小数不进行四舍五入
5、public String getDoublePoint(Double d,int point)
--获取下一月(还没到来)
6、public String getNextMonth(String datestr)
--获取本年1月到当前月份
7、public List getStartMonthToCurMonth()
--退一天(获取昨天)
8、public String getNextDay(String datestr)
--将集合中HashMap的指定列收集成字符串返回 多个用逗号分开
9、public String ListMapToStrs(List list,String name)
--将list转成字符串
10、public String ListStringToStrs(List list)
--获得当前周- 周一的日期
11、private String getWeekFirstDay()
--获得当前周- 周日的日期
12、private String getWeekLastDay()
--获取本周 周一到周日 的日期
13、public HashMap getWeekFirstToLastDay()
--万元单位换算
14、public String unitWConversion(String str,int point,boolean showunit)
--获取占比
15、public String getBaifenbi(String d1,String d2)
--获取指定日期所属月份的 最后一天
16、public String getEndDayByMonth(String datatimestr)
--比较两个日期大小 DATE1>DATE2 1,DATE1
17、public static int compareDate(String DATE1, String DATE2)
--计算同比方法
18、public HashMap getTongbiData(String sd1,String sd2)
--获取规字符串中的指定名称的某个字段值
/**
* username:nvalue,id:idval
* 获取规字符串中的指定名称的某个字段值
* @param filters
* @param name
* @return
*/
public String getValueByName(String params,String name){
String value="";
String[] one_arr=params.split(",");
for(int i=;i<one_arr.length;i++){
if(!one_arr[i].equals("")){
String[] two_arr=one_arr[i].split(":");
if(two_arr[].equals(name)){
if(two_arr.length>){
value=two_arr[];
}
}
}
}
return value;
}
--用于通过表单选中的复选框获取它的值
/**
* 用于通过表单选中的复选框获取它的值
*/
function getSelectedMasterKeys(){
var r_arr=new Array();
var elements=document.getElementsByTagName("INPUT");
var val="";
for(i=;i<elements.length;i++){
var name=elements[i].name;
if(elements[i].type=="checkbox"){
if(name.indexOf("master_key")!=-){
if(elements[i].checked==true){
r_arr[r_arr.length]=elements[i].value;
}
}
}
}
return r_arr;
}
--获取当前年
/**
* 获取当前年
* @return 字符串
*/
public String getCurMonth(){
Calendar now = Calendar.getInstance();
String datestr = new SimpleDateFormat("yyyy-MM").format(now.getTime());
return datestr;
}
--汇总指定列的 总和
/**
* 汇总指定列的 总和
* @param list
* @param coulumName 列名
* @param point 保留小数位
* @return
*/
public String getListColumnSum(List<HashMap> list,String coulumName,int point){
DecimalFormat df = new DecimalFormat("######0.00"); String main_total_str="";
String main_total="0.00";
for(HashMap map:list){
String total=this.getMapValue(map,coulumName); df.setMaximumFractionDigits(point);
df.setMinimumFractionDigits();
df.setRoundingMode(RoundingMode.FLOOR);
String total2=df.format(Double.parseDouble(total)/100f); BigDecimal b1 = new BigDecimal(total2);
BigDecimal b2 = new BigDecimal(main_total+"");
if(total!=null && !total.equals("")){
main_total=df.format(b1.add(b2).doubleValue());
}
}
main_total_str=this.getDoublePoint(df.format(Double.parseDouble(main_total)),point);
return main_total_str;
}
--保留小数不进行四舍五入
/**
* 保留小数不进行四舍五入
* @param d
* @return
*/
public String getDoublePoint(Double d,int point){
String r_dstr=d+"";
String[] d_arr=(d+"").split("\\.");
if(d_arr.length==){
String point_str=d_arr[];
if(!point_str.equals("") && point_str.length()>){point_str=point_str.substring(,);}
if(Integer.parseInt(point_str)==){
r_dstr=d_arr[];
}else{
if(point>d_arr[].length()){point=d_arr[].length();}
r_dstr=d_arr[]+"."+d_arr[].substring(, point);
}
}
return r_dstr;
}
--获取下一月(还没到来)
/**
* 下一月(还没到来)
* @param datestr
* @return
*/
public String getNextMonth(String datestr){
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
String newDatestr="";
try {
Date d = sdf.parse(datestr); Calendar calendar = Calendar.getInstance();
calendar.setTime(d);
calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH)+);
newDatestr = sdf.format(calendar.getTime());
} catch (Exception e) {
e.printStackTrace();
} return newDatestr;
}
--获取本年1月到当前月份
/**
* 获取本年1月到当前月份
* @return
*/
public List<String> getStartMonthToCurMonth(){
Calendar now = Calendar.getInstance();
String cmonth = new SimpleDateFormat("MM").format(now.getTime());
List<String> list=new ArrayList<String>();
int cmonth_int=Integer.parseInt(cmonth);
for(int i=;i<=cmonth_int;i++){
list.add(i+"");
}
return list;
}
--退一天(获取昨天)
/**
* 退一天
* @param datestr
* @return
*/
public String getNextDay(String datestr){
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
String newDatestr="";
try {
Date d = sdf.parse(datestr); Calendar calendar = Calendar.getInstance();
calendar.setTime(d);
calendar.add(calendar.DATE,-1); newDatestr = sdf.format(calendar.getTime());
} catch (Exception e) {
e.printStackTrace();
} return newDatestr;
}
--将集合中HashMap的指定列收集成字符串返回 多个用逗号分开
/**
* 将集合中HashMap的指定列收集成字符串返回 多个用逗号分开s
* @param list
* @param name
* @return
*/
public String ListMapToStrs(List<HashMap> list,String name){
String strs="";
for(HashMap map:list){
String value=this.getMapValue(map,name);
if(!value.equals("")){
strs=strs+value+",";
}
}
if(strs.endsWith(",")){
strs=strs.substring(0,strs.length()-1);
}
return strs;
}
--将list转成字符串
/**
* 将list转成字符串
* @param list
* @return
*/
public String ListStringToStrs(List<String> list){
String strs="";
for(String str:list){
if(!str.equals("")){
strs=strs+str+",";
}
}
if(strs.endsWith(",")){
strs=strs.substring(0,strs.length()-1);
}
return strs;
}
--获得当前周- 周一的日期
/**
* 获得当前周- 周一的日期
* @return
*/
private String getWeekFirstDay() {
int mondayPlus = getMondayPlus();
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(GregorianCalendar.DATE, mondayPlus);
Date monday = currentDate.getTime(); String default_format="yyyy-MM-dd";
SimpleDateFormat df=new SimpleDateFormat(default_format); String preMonday = df.format(monday);
return preMonday;
}
--获得当前周- 周日的日期
/**
* 获得当前周- 周日 的日期
* @return
*/
private String getWeekLastDay() {
int mondayPlus = getMondayPlus();
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(GregorianCalendar.DATE, mondayPlus +6);
Date monday = currentDate.getTime(); String default_format="yyyy-MM-dd";
SimpleDateFormat df=new SimpleDateFormat(default_format); String preMonday = df.format(monday);
return preMonday; }
--获取本周 周一到周日 的日期
/**
* 获取本周 周一到周日 日期
* @return
*/
public HashMap getWeekFirstToLastDay(){
HashMap weekday=new HashMap();
weekday.put("starttime",this.getWeekFirstDay());
weekday.put("endtime",this.getWeekLastDay());
return weekday;
}
--万元单位换算
/**
* 万元单位换算
* @param str 需要转换的值
* @param point 保留单位数
* @param unitstr 单位万元
* @return
*/
public String unitWConversion(String str,int point,boolean showunit){
DecimalFormat df = new DecimalFormat("######0.00");
df.setMaximumFractionDigits(point);
df.setRoundingMode(RoundingMode.FLOOR);
String total=str;
String unitstr="";
if(Double.parseDouble(str)>9999){
total=df.format(Double.parseDouble(str)/10000f);
if(showunit==true){unitstr="万元";}
}else{
total=total;
if(showunit==true){unitstr="元";}
}
return total+unitstr;
}
--获取占比
/**
* 获取占比
* @param d1
* @param d2
* @return
*/
public String getBaifenbi(String d1,String d2){
String value="0";
if(d1.matches("^[-\\+]?[.\\d]*$") && d2.matches("^[-\\+]?[.\\d]*$")){
Double tb=(Double.parseDouble(d1)/Double.parseDouble(d2))*100;
value=this.getDoublePoint(tb,2);
}
if(!value.matches("^[-\\+]?[.\\d]*$")){
value="0";
}
return value;
}
--获取指定日期所属月份的 最后一天
/**
* 获取指定日期所属月份的 最后一天
* @param datatimestr
* @return
*/
public String getEndDayByMonth(String datatimestr){
String endtime="";
try{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date d = sdf.parse(datatimestr);
Calendar calendar = Calendar.getInstance();
calendar.setTime(d);
calendar.set(Calendar.DATE, 1);
calendar.roll(Calendar.DATE, -1);
int maxDate = calendar.get(Calendar.DATE);
endtime=datatimestr.substring(0,datatimestr.lastIndexOf("-"))+"-"+this.zeroFill(maxDate+"",2);
}catch(Exception ex){
ex.printStackTrace();
}
return endtime;
}
--比较两个日期大小 DATE1>DATE2 1,DATE1
/**
* 比较两个日期大小 DATE1>DATE2 1,DATE1<DATE2 2,DATE1=DATE2 3
* @param DATE1
* @param DATE2
* @return
*/
public static int compareDate(String DATE1, String DATE2) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
try {
Date dt1 = df.parse(DATE1);
Date dt2 = df.parse(DATE2);
if (dt1.getTime() > dt2.getTime()) {
return 1;
} else if (dt1.getTime() < dt2.getTime()) {
return 2;
} else if (dt1.getTime() == dt2.getTime()) {
return 3;
}
} catch (Exception exception) {
exception.printStackTrace();
}
return 0;
}
--计算同比方法
/**
* 计算同比方法
* @param d1 上年数据
* @param d2 本年数据
* @return
*/
public HashMap getTongbiData(String sd1,String sd2){
//System.out.println("sd1::" + sd1 + " sd2:"+sd2);
Double d1=Double.parseDouble(sd1);
Double d2=Double.parseDouble(sd2); String orderby="";
String value="";
Double tb=0.00;
if(d1>0){//上一年有数据
if(d2>0){
if(d2>d1){
orderby="asc";//代表上升
tb=(Double.parseDouble((d2-d1)+"")/Double.parseDouble(d1+""))*100;
}else{//代表下升
if(!d2.equals(d1)){
orderby="desc";
}
tb=(Double.parseDouble((d1-d2)+"")/Double.parseDouble(d1+""))*100;
}
}else{
if(d2>0){
orderby="desc";//代表下降
}else{
orderby="";
}
}
}else{//上一年没有数据
if(d2>0){
orderby="asc";
tb=100.0;
}else{
tb=0.0;
}
}
value=this.getDoublePoint(tb,2)+"%";
HashMap map=new HashMap();
map.put("value",value);
map.put("orderby",orderby);
return map;
}
Java常用的公共方法的更多相关文章
- Java常用的输入输出方法
对于经常上机刷题的来说,首先得解决输入输出方法,Java的输入输出流在Java学习过程的后面部分才会接触,但是我们可以掌握一些简单的,常用的输入输出方法 首先输出 大家最熟悉的莫过于输出方法,直接用S ...
- java 常用的验证方法帮助类
import java.text.ParseException; import java.util.Collection; import java.util.Map; /** * 常用的验证方法帮助类 ...
- javascript常用的公共方法
附件下载 //摘要:将指定字符串中的格式项替换为指定数组中相应对象的字符串表示形式. //参数:复合格式字符串. //返回结果:format的副本,其中的格式项已替换为 args 中相应对象的字符串表 ...
- java 常用jar包方法
1.Mapper3 常用接口 https://blog.csdn.net/fangwenzheng88/article/details/78713091 2.分页 pageHelper
- Java常用日期处理方法
import org.apache.commons.lang3.time.FastDateFormat; import org.joda.time.DateTime; import org.apach ...
- java 邮箱验证公共方法
- iOS常用公共方法
iOS常用公共方法 字数2917 阅读3070 评论45 喜欢236 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat si ...
- J2EE项目开发中常用到的公共方法
在项目IDCM中涉及到多种工单,包括有:服务器|网络设备上下架工单.服务器|网络设备重启工单.服务器光纤网线更换工单.网络设备撤线布线工单.服务器|网络设备替换工单.服务器|网络设备RMA工单.通用原 ...
- JAVA常用的XML解析方法
转并总结自(java xml) JAVA常用的解析xml的方法有四种,分别是DOM,JAX,JDOM,DOM4j xml文件 <?xml version="1.0" enco ...
随机推荐
- ZOJ - 3870 Team Formation(异或)
题意:给定N个数,求这N个数中满足A ⊕ B > max{A, B})的AB有多少对.(A,B是N中的某两个数) 分析: 1.异或,首先想到转化为二进制. eg:110011(A)和 1(B)- ...
- mac安装vue没有使用权限不足
➜ ~ vue init webpack frontend ⠋ downloading template /usr/local/lib/node_modules/vue-cli/node_modul ...
- MFC中隐藏和显示光标的切换
函数原型:int ShowCursor(BOOL bShow): 参数: bShow:确定内部的显示计数器是增加还是减少,如果bShow为TRUE,则显示计数器增加1,如果bShow为FALSE,则计 ...
- jq监听
$(window).resize(function () {//风电月表格自适应高度 var handHeight =$(".tree-handler").height() $(& ...
- rdlc报表带参数打印
1.新建rdlc文件报表 2.选中rdlc文件=>视图=>报表资料 添加几个参数,如图 设计报表页面 int WaitNum = this.queueDTOs.Where(m=>m. ...
- java web实现在线编辑word,并将word导出(二)
前一篇文章介绍了后台将前台html转为word文档的一种方式,但却有一个问题是没法讲图片放置在生成的word报告中.我在网上找了很多方法,甚至将图片转换成base64编码的方式也不成功.效果如下: 由 ...
- 计划任务常用在线工具-微服务信息整-seafile网盘-亿图操作-正则工具
正则工具 https://regex101.com/ http://www.regexp.cn/Regex 身份证匹配 ^(\\d{}|\d{})(\\d|[xX])$ \d{}[-9Xx]|\d{} ...
- WebServerInitializedEvent &ApplicationRunner
application.properties app.name=yaoyuan2 app.dept.id=1 MyConfig.java import lombok.AllArgsConstructo ...
- POJ 3970:Party
Party Time Limit: 1000MS Memory Limit: 65536KB 64bit IO Format: %I64d & %I64u Submit Status ...
- opencv vs2013提示缺少Qedit.h问题
#pragma include_alias( "dxtrans.h", "qedit.h" ) #define __IDxtCompositor_INTERFA ...