首页 java基础 java 常用数组帮助类

java 常用数组帮助类

判断数组是否为空,获取数组长度,判断数组是否含有某个元素,数组转List 排序 min-max ,数组转String i…

判断数组是否为空,获取数组长度,判断数组是否含有某个元素,数组转List

排序 min-max ,数组转String

import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Date;
import java.util.List;


public class ArrayUtils {

	/**
	 * 判断数组是否为空
	 * @param array
	 * @return
	 */
	public static <T> boolean isEmpty(T[] array){
		if(array==null||array.length==0)return true;
		return false;
	}

	/**
	 * 获取数组长度
	 * @param array
	 * @return
	 */
	public static <T> int length(T[] array){
		if(array==null||array.length==0)return 0;
		return array.length;
	}

	/**
	 * 判断数组是否含有某个元素
	 * @param array
	 * @param t
	 * @return
	 */
	public static <T> boolean contains(T[] array,T t){
		if(length(array)==0)return false;
		for(T _t:array){
			if(_t==t)return true;
		}
		return false;
	}

	/**
	 * 数组转List
	 * @param array
	 * @return
	 */
	public static <T> List<T> asList(T[] array){
		return Arrays.asList(array);
	}

	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static int[] sort(int[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static char[] sort(char[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static double[] sort(double[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static float[] sort(float[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array 待排序数组
	 * @param caseInsensitive 是否大小写敏感
	 * @return
	 */
	public static String[] sort(String[] array,boolean caseInsensitive){
		if(caseInsensitive){
			Arrays.sort(array);
		}else{
			Arrays.sort(array,String.CASE_INSENSITIVE_ORDER);
		}
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static byte[] sort(byte[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static short[] sort(short[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static Object[] sort(Object[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static Integer[] sort(Integer[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static Character[] sort(Character[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static Double[] sort(Double[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static Float[] sort(Float[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static Byte[] sort(Byte[] array){
		Arrays.sort(array);
		return array;
	}
	/**
	 * 排序 min-max
	 * @param array
	 * @return
	 */
	public static Short[] sort(Short[] array){
		Arrays.sort(array);
		return array;
	}

	public static <T> T[] sort(T[] array,Comparator<T> c){
		Arrays.sort(array,c);
		return array;
	}

	/**
	 * 数组转String
	 * @param array
	 * @return
	 */
	public static <T> String toString(T[] array){
		StringBuffer sb=new StringBuffer("");
		if(isEmpty(array))return sb.toString();
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		int i=0;
		for(T t:array){
			if((t instanceof Integer)||(t instanceof Long)||(t instanceof Short)||(t instanceof Boolean)||(t instanceof Byte)||(t instanceof String)||(t instanceof Character)||(t instanceof Float)||(t instanceof Double)||(t instanceof Date)){
				if(t instanceof Date){
					sb.append((i++==0)?sdf.format(t):(","+sdf.format(t)));
				}else{
					sb.append((i++==0)?t.toString():(","+t.toString()));
				}
			}else{
				try {
					throw new Exception("Array.toString()方法仅支持Integer,Short,Long,Boolean,Byte,String,Character,Float,Double,Date");
				} catch (Exception e) {
					e.printStackTrace();
					return sb.toString();
				}
			}
		}
		return sb.toString();
	}

	public static void main(String[] args) {
		Date[] d={new Date(),new Date(),new Date(),new Date(),new Date(),new Date(),new Date()};
		System.out.println(toString(d));
	}

}

 

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

为您推荐

26个大小写字母对应的哈希值

26个大小写字母对应的哈希值

大写字母: 小写字母 A 对应的哈希值:65 B 对应的哈希值:66 C 对应的哈希值:67 D 对应的哈希值:68 E...
linux 把文件名字写入到txt

linux 把文件名字写入到txt

1、首先连接上linux主机,进入到需要处理的目录,例如“/”目录。   2、输入:ls -1 > 1....
git 流程开发

git 流程开发

前提条件:不能在 master 分支上修改任何文件。master 分支的变更只能通过 git pull 和 git me...
使用Git将本地文件提交到远程仓库

使用Git将本地文件提交到远程仓库

使用Git将本地文件提交到远程仓库 使用Git将本地文件提交到远程仓库 现在要将本地代码推到git远程仓库保存,可以提交...
将博客搬至CSDN

将博客搬至CSDN

将博客搬至CSDN
返回顶部