服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

常用基础函数


  package com.cdc;

import java.util.*;
import java.io.*;

/**
* 常用基础函数(包括合并数组,拆分字串到数组,生成随机数,替换字符串中的子字符串,获取当前时间),将hashtable内容转入数组
* 创建日期:(2001-7-19 17:22:33)
* @author:刘晓东
*/

public class util {

/**
* 拼合数组。
* 创建日期:(2001-8-13 17:08:26)
* @return java.lang.string
* @param param java.lang.string
*/
public string join_array(string[] param,string spilt) {
string rentunstring;
stringbuffer tempstr = new stringbuffer();
int len = param.length;
for (int i = 0 ; i<len-1;i++ )
{
tempstr.append(param[i]);
tempstr.append(spilt);
}
tempstr.append(param[len-1]);
rentunstring = tempstr.tostring();

return rentunstring;
}
/**
* 产生在start和end之间的num个随机整数,返回值存在hashtable中。
* 创建日期:(2001-7-30 8:50:23)
* @return java.util.hashtable
* @param start int 起始点
* @param end int 结束点
* @param num int 生成个数
*/
public hashtable random(int start, int end, int num)
{
hashtable randomhash = new hashtable();
for (int i = 0; i < num; i++)
{
double sru = math.random() * end;
int tag = math.round((float) sru);
if (tag < start)
{
i--;
} else
{
randomhash.put(new integer(i), new integer(tag));
}
}
return randomhash;
}
/**
* 替换字符串中的子字符串
* 创建日期:(2001-10-10 13:50:21)
* @return java.lang.string
* @param param java.lang.string 原字符串
* @param param1 java.lang.string 需要替换的子字符串
* @param param2 java.lang.string 将被替换成的子字符串
* @exception java.lang.exception 异常说明。
*/
public string replacestring(
string param,
string param1,
string param2)
throws java.lang.exception {
string returnstring = "";
try
{
if (param != null
&& param1 != null
&& param2 != null
&& !param.equalsignorecase("")
&& !param1.equalsignorecase("")
&& !param2.equalsignorecase(""))
{

int intlen = param.length(); //原字符串长度

int intlensrc = param1.length(); //需要替换的子字符串长度

int intpoint = 0; //当前位置

while (intpoint < param.length())
{
if ((intpoint + intlensrc) <= param.length() && intpoint<param.length())
{
string comparestring =
param.substring(intpoint, intpoint + intlensrc);

if (comparestring.equalsignorecase(param1))
{
returnstring = returnstring + param2;

intpoint = intpoint + param1.length();
}
else
{
returnstring = returnstring + param.charat(intpoint);
intpoint++;

}

}
else if ((intpoint + intlensrc) > param.length() && intpoint<param.length())
{
returnstring = returnstring + param.charat(intpoint);
intpoint++;

}
else if ((intpoint + intlensrc) > param.length())
{
break;
}

}
}

}
catch (java.lang.exception ex)
{

return ex.tostring();

}

return returnstring;
}
/**
* 此处插入方法说明
* 拆分字串到数组,分割符请使用,.等,不能使用中文符号作为分割符号,返回hashtable
* 创建日期:(2001-7-10 14:50:31)
* @param fieldsru java.lang.string 输入参数:待拆分字符串
* @param tag java.lang.string 输入参数:分割符
* 返回hashtable
* @exception java.lang.exception 异常说明。
* @exception java.io.ioexception 异常说明。
*/
public hashtable spilt(string fieldsru, string tag)
{
hashtable returnarray = new hashtable();
char dot = tag.charat(0);
string field;
field = fieldsru + dot;
int num = 0;
int field_len = field.length();
for (int i = 0; i < field_len; i++)
{
if (field.charat(i) == dot)
{
num++;
}
}
int begin = 0;
int end;
for (int j = 0; j < num; j++)
{

end = field.indexof(dot, begin);
returnarray.put(new integer(j), field.substring(begin, end));
begin = end + 1;
}

return returnarray;
}

/**
* 拆分字串到数组,分割符请使用,.等,不能使用中文符号作为分割符号,返回string[]
* 创建日期:(2001-7-10 14:50:31)
* @param fieldsru java.lang.string 输入参数:待拆分字符串
* @param tag java.lang.string 输入参数:分割符
* 返回string[]
* @exception java.lang.exception 异常说明。
* @exception java.io.ioexception 异常说明。
*/
public string[] spilt_str(string fieldsru, string tag)
{
//hashtable returnarray = new hashtable();
char dot = tag.charat(0);
string field;
field = fieldsru + dot;
int num = 0;
int field_len = field.length();
for (int i = 0; i < field_len; i++)
{
if (field.charat(i) == dot)
{
num++;
}
}
string[] returnarray = new string[num];
int begin = 0;
int end;
for (int j = 0; j < num; j++)
{

end = field.indexof(dot, begin);
returnarray[j] = field.substring(begin, end);
//returnarray.put(new integer(j), field.substring(begin, end));
begin = end + 1;
}

return returnarray;
}
/**
* 拆分字串到数组,分割符可使用多个字符或者中文
* 创建日期:(2001-7-10 14:50:31)
* @param fieldsru java.lang.string 输入参数:待拆分字符串
* @param tag java.lang.string 输入参数:分割符
* @exception java.lang.exception 异常说明。
* @exception java.io.ioexception 异常说明。
*/
public string[] splitstring(string fieldsru, string tag)
{
try
{
int dot_len = tag.length(); //获得分割符的长度
int str_len = fieldsru.length(); //字符串长度
string tempstr = fieldsru + tag;
int num = 0;
for (int i = 0; i < str_len; i++)
{
int point = i + dot_len;
if (point < str_len)
{
string temp = fieldsru.substring(i, point);
if (temp.equalsignorecase(tag))
{
num++;
}
}
}
num = num + 1;
string[] returnarray = new string[num];
int begin = 0;
int end = fieldsru.indexof(tag);
for (int i = 0; i < num; i++)
{

end = tempstr.indexof(tag, begin);
returnarray[i] = tempstr.substring(begin, end);
begin = end + dot_len;
}
return returnarray;
}
catch (java.lang.exception e)
{
system.out.println(e.getmessage());

}
return null;
}

/**
* 获取当前时间()时间格式 (mm/dd/yyyy hh:mm:ss pm)参数为时区
* 创建日期:(2001-10-22 10:11:48)
* @return java.lang.string
* @exception java.lang.exception 异常说明。
*/
public string gettime(int time_zone) throws java.lang.exception {

string nowtime = "";
try
{
if (time_zone > 0)
{
time_zone = time_zone - 1;
}
else if (time_zone < 0)
{
time_zone = time_zone + 1;
}

string[] ids = timezone.getavailableids(time_zone * 60 * 60 * 1000);
simpletimezone pdt =
new simpletimezone(time_zone * 60 * 60 * 1000, ids[0]);
pdt.setstartrule(
calendar.april,
1,
calendar.sunday,
2 * 60 * 60 * 1000);
pdt.setendrule(
calendar.october,
-1,
calendar.sunday,
2 * 60 * 60 * 1000);

calendar calendar = new gregoriancalendar(pdt);
date trialtime = new date();
calendar.settime(trialtime);
string now_year = new integer(calendar.get(calendar.year)).tostring();
string now_month =
new integer(calendar.get(calendar.month) + 1).tostring();
if (now_month.length() == 1)
{
now_month = "0" + now_month;
}
string now_date = new integer(calendar.get(calendar.date)).tostring();
if (now_date.length() == 1)
{
now_date = "0" + now_date;
}
int am_pm = calendar.get(calendar.am_pm);
string now_hour = new integer(calendar.get(calendar.hour)).tostring();
if (am_pm == 1)
{
int intnow_hour = integer.parseint(now_hour) + 12;
now_hour = (new integer(intnow_hour)).tostring();

}
else
{
}
if (now_hour.length() == 1)
{

now_hour = "0" + now_hour;

}

string now_minute =
new integer(calendar.get(calendar.minute)).tostring();
if (now_minute.length() == 1)
{
now_minute = "0" + now_minute;
}

string now_second =
new integer(calendar.get(calendar.second)).tostring();
if (now_second.length() == 1)
{
now_second = "0" + now_second;
}

string str_ampm = "";
//判断上午还是下午
if (am_pm == 0)
{
str_ampm = "am";
}
else if (am_pm == 1)
{
str_ampm = "pm";
}
nowtime =
now_month
+ "/"
+ now_date
+ "/"
+ now_year
+ " "
+ now_hour
+ ":"
+ now_minute
+ ":"
+ now_second
+ " "
+ str_ampm;

}
catch (exception ex)
{
nowtime = ex.getmessage();

}
return nowtime;
}

/**
* 将hashtable内容转入数组
* 创建日期:(2001-10-29 8:58:54)
* @return java.lang.string
* @param param java.util.hashtable
* @exception java.lang.exception 异常说明。
*/
public string[] hashtoarray(hashtable param)
throws java.lang.exception {

if (param.size() == 0)
{
return null;
}
string[] return_array = new string[param.size()];
try
{
int param_size = param.size();
enumeration enumkeys = param.keys(); //将hashtable转换为枚举类型

for (int i = 0; enumkeys.hasmoreelements(); i++)
{
object temp = enumkeys.nextelement();
return_array[i] = (string) param.get(temp);
}
}
catch (exception ex)
{
return_array[0] = ex.getmessage();
}
return return_array;
}
}

扫描关注微信公众号