Java的Char的简单工具类CharUtil

本文介绍关于对字符char的简单操作,char,Java基本数据类型之一,底层保存的的是两个字节的int整数。默认显示的是Unicode这个int整数索引位置的字符。具体的就不详解了。

版本1:以下拥有查询是否数字,是否字母,是否大小写字母,获得字符的int表示。

虽然简单,也代表能够增强。

package cn.util;

/**
 * 字符工具类: 一些简单的操作方法。
 *
 * @author jxlys @version1.0
 */
public class CharUtil {

/**
    * 返回字符对应的int值.
    *
    * @param c
    */
    public static int getInt(char c) {
        return (int) c;
    }

/**
    * 检测是否字母
    *
    * @param c
    * @return
    */
    public static boolean isLetterCharacter(char c) {
        return isUpperCharacter(c) || isLowerCharacter(c) ? true : false;
    }

/**
    * 检测大写
    *
    * @param c
    */
    public static boolean isLowerCharacter(char c) {
        return (c >= 97 && c < 123) ? true : false;
    }

/**
    * 检测是否数字.
    *
    * @param c
    */
    public static boolean isNumber(char c) {
        return c >= 48 && c < 58 ? true : false;
    }

/**
    * 检测小写.
    *
    * @param c
    */
    public static boolean isUpperCharacter(char c) {
        return (c >= 65 && c < 91) ? true : false;
    }

private CharUtil() {// 不允许使用构造方法
        throw new RuntimeException();
    }
}

Java的Char的简单工具类CharUtil2.0

这个版本的工具类有了一点实用意义了。

版本新增:字母转大写或小写,字母的轻微加密(偏移加密),字母定向随机数加密.

package cn.util;

import java.util.Random;

/**
 * 字符工具类:
 *
 * @author JXLYS @version2.0
 */
public class CharUtil {

/**
    * 字符偏移加
    *
    * @param c
    *            原字符
    * @param i
    *            加值
    */
    public static char characterAdd(char c, int i) {
        return checkOutOfCharacter(c + i);
    }

/**
    * 定向获取随机数,并且对字符偏移加。
    *
    * @param c
    *            原字符
    * @param num
    *            定向随机数设定值
    * @param size
    *            随机添加的大小
    */
    public static char characterRandomAdd(char c, int num, int size) {
        return checkOutOfCharacter(c + new Random(num).nextInt(size));
    }

/**
    * 定向获取随机数,并且对字符偏移减。
    *
    * @param c
    *            原字符
    * @param num
    *            定向随机数设定值
    * @param size
    *            随机添加的大小
    */
    public static char characterRandomSub(char c, int num, int size) {
        return checkOutOfCharacter(c - new Random(num).nextInt(size));
    }

/**
    * 字符偏移减少
    *
    * @param c
    *            原字符
    * @param i
    *            减值
    */
    public static char characterSub(char c, int i) {
        return checkOutOfCharacter(c - i);
    }

private static char checkOutOfCharacter(int c) {// 检测越界
        while (true) {
            if (c < 0)
                c += 65535;
            else if (c > 65535)
                c -= 65535;
            else {
                break;
            }
        }
        return (char) c;
    }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/148dd45609c66d8d720739a3da108647.html