package com.persagy.server.utils

import java.util.*

/**
 * 竖井名称自动生成工具
 *
 * @author 张维新
 */
object ShaftNameUtil {

    /**
     * 竖井名字
     *
     * @param   name    名字
     */
    fun shaftName(name:String):String{
        return name + getCode(5)
    } // Function shaftName()

    /**
     * 字母和数字组合的随机数
     *
     * @param   n   随机数的位数
     */
    private fun getCode(n: Int): String {
        val string = "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ"//保存数字0-9 和 大小写字母
        val ch = CharArray(n) //声明一个字符数组对象ch 保存 验证码
        for (i in 0 until n) {
            val random = Random()//创建一个新的随机数生成器
            val index = random.nextInt(string.length)//返回[0,string.length)范围的int值    作用：保存下标
            ch[i] = string[index]//charAt() : 返回指定索引处的 char 值   ==》保存到字符数组对象ch里面
        }
        //将char数组类型转换为String类型保存到result
        //String result = new String(ch);//方法一：直接使用构造方法      String(char[] value) ：分配一个新的 String，使其表示字符数组参数中当前包含的字符序列。
//        val result = String(ch)//方法二： String方法   valueOf(char c) ：返回 char 参数的字符串表示形式。
        return  String(ch)
    }// Function getCode()

} // Object ShaftNameUtil