`

开发中常用的一些封装好的工具类

    博客分类:
  • Java
 
阅读更多

可直接使用的常用判断工具类

 

String   StringUtils.join(collections, ",");                 jar: commons-lang-2.5.jar    

 

StringUtils.defaultString(null)     返回:  ""

StringUtils.defaultString(null, "----")     返回:  "----"

 

作用:  将 null 值转换成对应的字符串 。 默认是转换成 "" 字符串。

 

StringUtils 的详细使用:

http://crabdave.iteye.com/blog/638087

 

 

应用: 将集合中的对象用  ,  号 拼接输出    如果,我们用来构造 SQL 语句的 删除可以

 

List<Long> ids = new ArrayList();
ids.add(1L);
ids.add(2L);
     .
     .
ids.add(1L);
execute  "delete from tables where id in("  + StringUtils.join(ids, ",") + ")";

 

集合工具类 CollectionUtils.isNotEmpty(List list)       jar: commons-collections-3.2.1.jar       

 

判断 List 是不是空 , 不必考虑 NULL 空异常

 

 

 

 

开发中我们通常会自己定义一些封装好的工具类

数值计算工具类:

这段代码把比较长的小数位格式化,以免会变成科学计数法的表示方式.

 

public class DoubleUtil {
	
	private static Map formats = new HashMap();
	
	static {
		formats.put(Integer.valueOf("2"), new DecimalFormat("##0.00"));
		formats.put(Integer.valueOf("4"), new DecimalFormat("##0.0000"));
		formats.put(Integer.valueOf("6"), new DecimalFormat("##0.000000"));
		formats.put(Integer.valueOf("9"), new DecimalFormat("##0.000000000"));
	}
	
	public static String format(Double value, int scale) {
		DecimalFormat fmt = (DecimalFormat) formats.get(Integer.valueOf(String.valueOf(scale)));
		return fmt.format(value);
	}
	
	public static String format(double value, int scale) {
		if (value == 0) {
			return "0";
		}
		DecimalFormat fmt = (DecimalFormat) formats.get(Integer.valueOf(String.valueOf(scale)));
		return fmt.format(value);
	}
}

 

 

时间日期工具类:

 

public class DateUtils {

public static Date stringToDate(String date, String format)
			throws ParseException {
		if (StringUtils.isBlank(date)) {
			return null;
		}
		SimpleDateFormat sdf = new SimpleDateFormat(format);
		return sdf.parse(date);
	}

public static String dateToString(Date date, String format) {
		if (date == null) {
			return null;
		}
		SimpleDateFormat sdf = new SimpleDateFormat(format);
		return sdf.format(date);
	}

	public static long daysBetweenByDate(java.util.Date beginDate,
			java.util.Date endDate) {
		if (beginDate == null)
			beginDate = new java.util.Date();
		if (endDate == null)
			endDate = new java.util.Date();
		long beginTime = beginDate.getTime();
		long endTime = endDate.getTime();
		long betweenDays = (long) ((endTime - beginTime) / (1000 * 60 * 60 * 24));

		return betweenDays;
	}
}

 

 

字符串工具类

 

public class StringUtils {


	public static boolean isEmpty(String str) {
		return str == null || str.length() == 0;
	}

	public static String trim(String str) {
		return str == null ? null : str.trim();
	}

	public static boolean equals(String str1, String str2) {
		return str1 == null ? str2 == null : str1.equals(str2);
	}


	//把字符串按照perCount的长度平均劈开,我们在处理组合因子码的时候经常使用这个方法.
	public static List<String> averageSplit(String src, int perCount) {
		if (src == null || src.equals("") || src.length() % perCount != 0) {
			return new ArrayList<String>();
		}

		int count = src.length() / perCount;
		List<String> result = new ArrayList<String>();
		for (int i = 0; i < count; i++) {
			int temp = i * perCount;
			result.add(src.substring(temp, temp + perCount));
		}
		return result;
	}


	//判断是否身份证
	public static boolean isCardID(String cardID) {
		if (isBlank(cardID)) {
			return false;
		}

		if (cardID.length() == 15) {
			return Pattern
					.matches(
							"^[1-9]\\d{5}(\\d{2}((((0[13578])|(1[02]))(([0-2][0-9])|(3[01])))|(((0[469])|(11))(([0-2][0-9])|(30)))|(02[0-2][0-9])))\\d{3}$",
							cardID);
		} else if (cardID.length() == 18) {
			return Pattern
					.matches(
							"^[1-9]\\d{5}(\\d{4}((((0[13578])|(1[02]))(([0-2][0-9])|(3[01])))|(((0[469])|(11))(([0-2][0-9])|(30)))|(02[0-2][0-9])))\\d{3}[\\dX]$",
							cardID);
		} else {
			return false;
		}
	}

	//从身份证中获取性别信息
	public static String getSex(String cardID) {
		if (!isCardID(cardID)) {
			return null;
		}
		if (cardID.length() == 15) {
			int i = Integer.parseInt(cardID.substring(14));
			return i % 2 == 0 ? CommonConstants.SEX_TYPE_FEMALE
					: CommonConstants.SEX_TYPE_MAN;
		} else if (cardID.length() == 18) {
			int i = Integer.parseInt(cardID.substring(16, 17));
			return i % 2 == 0 ? CommonConstants.SEX_TYPE_FEMALE
					: CommonConstants.SEX_TYPE_MAN;
		} else {
			return null;
		}
	}


}

 

分享到:
评论

相关推荐

    Teamcenter常用方法封装的工具类

    Teamcenter常用方法封装的工具类,包含的方法有获取顶层bomline、创建文件夹、item、工艺等、添加关系、添加数据集、获取首选项中的值、根据Item获取最新版本主属性表单、获取Home文件夹、获取邮箱文件夹、获取New...

    java常用工具类的封装jar

    并且在平时开发中会遇到各种各样通用的一些功能,比如对json的处理,对String对象的处理,对Excel文件的处理,MD5加密处理,Bean对象处理等等,这些常用并通用的方法可以被封装成一个个工具类如StringUtil,...

    java常用工具类封装

    在Java编程中,工具类(Util Classes)是包含各种实用...通过封装这些常用工具类,开发人员可以快速构建功能丰富的应用,提高代码质量,并降低维护成本。了解并熟练运用这些工具和库,对于提升Java开发效率至关重要。

    Android 封装的工具类

    在Android开发中,工具类(Utils Class)是程序员经常创建的一种辅助代码结构,用来封装一些通用功能,提高代码的复用性和可维护性。这里提到的"Android 封装的工具类"涵盖了几种关键的模块,包括网络请求、数据库...

    一些java常用的工具类

    总之,Java工具类是提高开发效率的关键,它们封装了常见的操作,减少了代码重复,提高了代码可读性和维护性。"一些java常用的工具类"可能涵盖了上述的多种功能,为开发者提供了方便快捷的编程体验。通过理解和利用...

    封装Android中10个常用的工具类

    以下是对标题"封装Android中10个常用的工具类"和描述中所述知识点的详细解释: 1. **字符串处理工具类**: - `StringUtils`:提供对字符串的各种操作,如格式化、拼接、检查空值、分割、替换等。 - `HtmlUtils`:...

    基于Android系统Api封装常用工具类

    在Android应用开发中,工具类(Utils)的封装是一个重要的环节,它可以帮助开发者高效地复用代码,提高开发效率。本项目"基于Android系统Api封装常用工具类"就是这样一个资源库,它集成了Android API的各种实用功能...

    常用jar包括封装的工具类

    本压缩包提供的是一系列常用且实用的jar文件,涵盖了SpringMVC、MyBatis框架的核心组件,以及一些辅助开发的工具类和解析功能。以下是这些jar文件包含的主要知识点: 1. **SpringMVC**: SpringMVC是Spring框架的一...

    项目中常用java常用封装类

    这里,我们重点讨论的是在项目中经常使用的Java封装类,这些类通常是开发人员为了简化常见任务而创建的工具类或者实用类。下面,我们将详细探讨String类的封装、分页封装、Servlet的封装以及其他一些常见的封装实践...

    安卓开发框架工具类相关-Android快速开发系列10个常用工具类.rar

    【标题】"安卓开发框架工具类相关-Android快速开发系列10个常用工具类.rar" 涉及的是Android应用程序开发中的一个关键方面——工具类的集合。在Android开发中,工具类通常包含一系列静态方法,用于执行常见的、重复...

    java各种常用的工具类封装 源码

    在Java编程中,工具类(Util)是程序员经常会用到的辅助类库,它们提供了许多实用功能,简化了代码编写。...在实际开发中,这些工具类大大提高了开发效率,减少了出错的可能性,是Java开发者不可或缺的助手。

    常用php封装分页工具类

    6. **可配置性**:为了适应不同的需求,分页工具类还可以包含一些可配置的选项,如默认每页条目数、是否显示省略号等。 结合这些要点,我们可以创建一个灵活且易于使用的PHP分页工具类。在实际项目中,你可以根据...

    自己整理的C#常用工具类

    在C#编程中,工具类(Utility Class)是一种常见的设计模式,它封装了一些常用的功能,以便在项目中方便地重复使用。这些工具类通常包含静态方法,不涉及实例化,直接通过类名调用,降低了代码冗余,提高了代码复用...

    android 常用快速开发集成工具类

    这里提到的"android 常用快速开发集成工具类"就是这样的一个集合,它包含了在实际项目开发中可能会频繁使用的各种工具方法,帮助开发者快速实现功能,减少重复劳动。 这个工具类库可能包含以下几个方面的主要内容:...

    基于Android系统Api封装常用工具类.zip

    这个名为"基于Android系统Api封装常用工具类.zip"的压缩包文件,显然包含了开发者为Android应用程序定制的一系列实用工具类,旨在简化代码、提高开发效率。下面,我们将深入探讨这些工具类可能涉及的知识点。 1. **...

    java常用工具类封装util.rar

    下面将详细介绍一些Java开发中常见的工具类及其功能。 1. **字符串处理工具类(StringUtil)**:此类通常包含处理字符串的各种方法,如字符串拼接、格式化、去除空白字符、判断是否为空、分割字符串等。例如`isEmpty...

    android 常用工具封装

    在Android开发中,工具类的封装对于提升代码的可复用性和项目效率至关重要。"android 常用工具封装"这个主题聚焦于如何通过Java语言来优化和整理Android开发中的常用功能,使得开发者能够更方便地集成和调用。下面...

    Android开发常用工具类

    以下是一些Android开发常用的工具类及其核心知识点: 1. **字符串处理工具类**: - `StringUtils`:包含了对字符串的各种操作,如空判断、格式化、拼接、查找替换等。例如,`isNullOrEmpty()`方法用于检查字符串...

    封装了常用的日期格式工具类

    这个"封装了常用的日期格式工具类"提供了便捷的方法来处理这些需求,使得开发者无需深入了解Java的日期API就能高效地工作。 `DateUtil`和`VeDate`这两个类可能是为了解决以下问题而设计的: 1. **日期格式化**:在...

    EasyiOS_iOS开发类的各种封装

    EasyiOS可能是由一系列自定义的类别、分类、工具类以及可能的扩展框架组成的集合,它覆盖了iOS开发中的多个方面。 1. **类别(Category)封装**: 在Objective-C中,类别可以给已有的系统类添加方法,而无需继承。...

Global site tag (gtag.js) - Google Analytics