欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java 常用方法总结~持续更新记录学习

程序员文章站 2024-02-03 11:34:10
一:记录三种随机数生成(适用于生成激活码等)生成字母数字随机组合(传入12)生成纯字母组合(传入12)生成前6位字母后6位数字组合(传入6)package cn.canzjx.utils;import java.util.Random;public class Randoms { /** * java生成随机数字和字母组合 * @param length[生成随机数的长度]12 即可 * @return */ public st....

一:记录三种随机数生成(适用于生成激活码等)

  1.  生成字母数字随机组合(传入12)
  2. 生成纯字母组合(传入12)
  3. 生成前6位字母后6位数字组合(传入6)
package cn.canzjx.utils;
import java.util.Random;

public class Randoms {
    /**
     * java生成随机数字和字母组合
     * @param length[生成随机数的长度]12 即可
     * @return
     */
    public static String getCharAndNumr(int length) {
        String val = "";
        Random random = new Random();
        for (int i = 0; i < length; i++) {
            // 输出字母还是数字
            String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num"; //该方法的作用是生成一个随机的int值
            // 字符串
            if ("char".equalsIgnoreCase(charOrNum)) { //equalsIgnoreCase:忽略大小写进行字母比较
                // 取得大写字母还是小写字母
                int choice = random.nextInt(2) % 2 == 0 ? 65 : 97; //random.nextInt:该方法的作用是生成一个随机的int值,该值介于[0,n)的区间,也就是0到n之间的随机int值,包含0而不包含n
                val += (char) (choice + random.nextInt(26));
            } else if ("num".equalsIgnoreCase(charOrNum)) { // 数字
                val += String.valueOf(random.nextInt(10));
            }
        }
        return val;
    }
    /**
    *java生成纯12位字母
    * @param length[生成随机数的长度]12 即可
    */
    public static String getCharAndNumrPlus(int length){
        String base = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
        Random random = new Random();
        StringBuffer sb = new StringBuffer();
        for ( int i = 0; i < length; i++ )
        {
            int number = random.nextInt( base.length() );
            sb.append( base.charAt( number ) );
        }
        return sb.toString();
    }
    /**
     * java生成 前6位字母+后6位数字组合
     * @param length[生成随机数的长度]6 即可
     * */
    public static String getCharAndNumrMap(int length){
        String base = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
        Random random = new Random();
        String val = "";
        StringBuffer sb = new StringBuffer();
        for ( int i = 0; i < length; i++ )
        {
            int number = random.nextInt( base.length() );
            sb.append( base.charAt( number ) );
        }
        for(int i = 0;i<length;i++){
            val += String.valueOf(random.nextInt(10));
        }
        return sb.toString() + val;
    }
}

二.关于字符串判断是否相等或不相等

String one = "666";
String two = "666";
one.equals(two) == false; //判断当one 与 two 不想等时
one.equals(two) == true;  //判断当one 与 two 相等时


String one = "555";
String two = "444";
one.compareTo(two) > 0 //one 大于 two

三.字符串的加减运算(原文链接:https://blog.csdn.net/wu920604/article/details/76673283(本文为CSDN博主「开着拖拉机的梦想家」的原创文章));

String str1="111";
String str2="222";
BigDecimal num1 = new BigDecimal(str1);
BigDecimal num2 = new BigDecimal(str2);
然后通过BigDecimal的加减乘除方法,进行运算:
加法:
BigDecimal result = num1.add(num2);
减法:
result = num1.subtract(num2);
除法:
result = num1.divide(num2);
乘法:
result = num1.multiply(num2);

四.获取当前时间戳的方法

//获取当前时间y-m-d(时间戳)
long timeMillis = System.currentTimeMillis();
SimpleDateFormat format = new SimpleDateFormat("dd");
String dayOfMonth = format.format(timeMillis);

五.当入参与实体类中的字段不一致时将传入字段映射成实体类字段方法

//前端传入的字段名为id 但实体类中是slide_id;所以通过注解@JsonProperty进行映射
@JsonProperty("id")
private Integer slide_id;

/*
第二种情况 假设当删除接口与编辑接口传入id 不一样
删除接口 id
编辑接口 slide_id
private Integer slide_id;
@JsonProperty , @JsonAlias这两个注解将帮助我们把JSON属性映射到同一Java字段。
具体查看地址 https://blog.csdn.net/weilin705/article/details/88692132 感谢分享
*/
@JsonProperty("id")
@JsonAlias("slide_id")
private Integer slide_id;

tip:刚刚接触java 有很多不会的地方此文章只是当作个人随手笔记,如有侵权请告知删除.如果有路过的大神希望分享下其他常用的知识????感谢!!吃水不忘打井人,一起学习进步!

本文地址:https://blog.csdn.net/qq_41030766/article/details/114323390