JAVA常用操作语句----项目中的总结五
2010-05-11 16:34
519 查看
数字的格式化
DecimalFormat df = new DecimalFormat(",###.00");
double aNumber = 33665448856.6568975;
String result = df.format(aNumber);
Sytem. out.println(result);
输出结果为:
33,665,448,856.66
分析字符串
StringTokenizer(String s) 构造一个分析器,使用默认分隔字符(空格,换行,回车,Tab,进纸符)
StringTokenizer(String s,String delim) delim是自己定义的分隔符
nextToken() 逐个获取字符串中的语言符号
boolean hasMoreTokens() 只要字符串还有语言符号将返回true,否则返回false
countTokens() 得到一共有多少个语言符号
数组的选择排序
public void ListNum(int[] a){
for(int k=0;k<a.length-1;k++){
int j=k;
int mini=a[k];
for(int i=k+1;i<a.length;i++){
if(a[k]>a[i]){
a[k]=a[i];
j=i;
}
}
a[j]=mini;
}
}
MD5和一个可逆加密算法相接合的加密和解密程序
import java.security.MessageDigest;
/**
*先通过MD5加密之后,再来一次可逆的加密。
*顺序可以调整,可以选择先用可逆加密,然后再用MD5加密
*/
public class MD5andKL{
//MD5加码。32位
public static String MD5(String inStr) {
MessageDigest md5 = null;
try {
md5 = MessageDigest.getInstance("MD5");
} catch (Exception e) {
System.out.println(e.toString());
e.printStackTrace();
return "";
}
char[] charArray = inStr.toCharArray();
byte[] byteArray = new byte[charArray.length];
for (int i = 0; i < charArray.length; i++)
byteArray[i] = (byte) charArray[i];
byte[] md5Bytes = md5.digest(byteArray);
StringBuffer hexValue = new StringBuffer();
for (int i = 0; i < md5Bytes.length; i++) {
int val = ((int) md5Bytes[i]) & 0xff;
if (val < 16)
hexValue.append("0");
hexValue.append(Integer.toHexString(val));
}
return hexValue.toString();
}
//可逆的加密算法
public static String KL(String inStr){
//String s = new String(inStr);
char[] a = inStr.toCharArray();
for (int i = 0;i <a.length;i++) {
a[i] = (char)(a[i]^'t');
}
String s=new String(a);
return s;
}
//加密后解密
public static String JM(String inStr){
char[] a=inStr.toCharArray();
for (int i = 0;i <a.length;i++) {
a[i]= (char)(a[i]^'t');
}
String k=new String(a);
return k;
}
//测试主函数
public static void main (String args[]){
String s = new String("admin");
System.out.println("原始:"+s);
System.out.println("MD5后:"+MD5(s));
System.out.println("MD5后再加密:"+KL(MD5(s)));
System.out.println("解密为MD5后的:"+JM(KL(MD5(s))));
}
}
任意对象转化为JSON
import
java.beans.IntrospectionException;
import
java.beans.Introspector;
import
java.beans.PropertyDescriptor;
import
java.math.BigDecimal;
import
java.math.BigInteger;
import
java.util.List;
import
java.util.Map;
import
java.util.Set;
/**
* 序列化对象为JSON格式 遵循JSON组织公布标准
*
* @date 2008/05/07
*
@version
1.0.0
*/
public
class
Json {
/**
Commons Logging instance.
*/
private
static
org.apache.commons.logging.Log log
=
org.apache.commons.logging.LogFactory.getLog(Json.
class
);
/**
*
@param
obj 任意对象
*
@return
String
*/
public
static
String object2json(Object obj) {
StringBuilder json
=
new
StringBuilder();
if
(obj
==
null
) {
json.append(
"
/"/"
"
);
}
else
if
(obj
instanceof
String
||
obj
instanceof
Integer
||
obj
instanceof
Float
||
obj
instanceof
Boolean
||
obj
instanceof
Short
||
obj
instanceof
Double
||
obj
instanceof
Long
||
obj
instanceof
BigDecimal
||
obj
instanceof
BigInteger
||
obj
instanceof
Byte) {
json.append(
"
/"
"
).append(string2json(obj.toString())).append(
"
/"
"
);
}
else
if
(obj
instanceof
Object[]) {
json.append(array2json((Object[]) obj));
}
else
if
(obj
instanceof
List) {
json.append(list2json((List
<?>
) obj));
}
else
if
(obj
instanceof
Map) {
json.append(map2json((Map
<?
,
?>
) obj));
}
else
if
(obj
instanceof
Set) {
json.append(set2json((Set
<?>
) obj));
}
else
{
json.append(bean2json(obj));
}
return
json.toString();
}
/**
*
@param
bean bean对象
*
@return
String
*/
public
static
String bean2json(Object bean) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
{
"
);
PropertyDescriptor[] props
=
null
;
try
{
props
=
Introspector.getBeanInfo(bean.getClass(), Object.
class
).getPropertyDescriptors();
}
catch
(IntrospectionException e) {
}
if
(props
!=
null
) {
for
(
int
i
=
0
; i
<
props.length; i
++
) {
try
{
String name
=
object2json(props[i].getName());
String value
=
object2json(props[i].getReadMethod().invoke(bean));
json.append(name);
json.append(
"
:
"
);
json.append(value);
json.append(
"
,
"
);
}
catch
(Exception e) {
}
}
json.setCharAt(json.length()
-
1
,
'
}
'
);
}
else
{
json.append(
"
}
"
);
}
return
json.toString();
}
/**
*
@param
list list对象
*
@return
String
*/
public
static
String list2json(List
<?>
list) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
[
"
);
if
(list
!=
null
&&
list.size()
>
0
) {
for
(Object obj : list) {
json.append(object2json(obj));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
]
'
);
}
else
{
json.append(
"
]
"
);
}
return
json.toString();
}
/**
*
@param
array 对象数组
*
@return
String
*/
public
static
String array2json(Object[] array) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
[
"
);
if
(array
!=
null
&&
array.length
>
0
) {
for
(Object obj : array) {
json.append(object2json(obj));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
]
'
);
}
else
{
json.append(
"
]
"
);
}
return
json.toString();
}
/**
*
@param
map map对象
*
@return
String
*/
public
static
String map2json(Map
<?
,
?>
map) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
{
"
);
if
(map
!=
null
&&
map.size()
>
0
) {
for
(Object key : map.keySet()) {
json.append(object2json(key));
json.append(
"
:
"
);
json.append(object2json(map.get(key)));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
}
'
);
}
else
{
json.append(
"
}
"
);
}
return
json.toString();
}
/**
*
@param
set 集合对象
*
@return
String
*/
public
static
String set2json(Set
<?>
set) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
[
"
);
if
(set
!=
null
&&
set.size()
>
0
) {
for
(Object obj : set) {
json.append(object2json(obj));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
]
'
);
}
else
{
json.append(
"
]
"
);
}
return
json.toString();
}
/**
*
@param
s 参数
*
@return
String
*/
public
static
String string2json(String s) {
if
(s
==
null
)
return
""
;
StringBuilder sb
=
new
StringBuilder();
for
(
int
i
=
0
; i
<
s.length(); i
++
) {
char
ch
=
s.charAt(i);
switch
(ch) {
case
'
"
'
:
sb.append(
"
///"
"
);
break
;
case
'
//
'
:
sb.append(
"
////
"
);
break
;
case
'
/b
'
:
sb.append(
"
//b
"
);
break
;
case
'
/f
'
:
sb.append(
"
//f
"
);
break
;
case
'
/n
'
:
sb.append(
"
//n
"
);
break
;
case
'
/r
'
:
sb.append(
"
//r
"
);
break
;
case
'
/t
'
:
sb.append(
"
//t
"
);
break
;
case
'
/
'
:
sb.append(
"
///
"
);
break
;
default
:
if
(ch
>=
'
/u0000
'
&&
ch
<=
'
/u001F
'
) {
String ss
=
Integer.toHexString(ch);
sb.append(
"
//u
"
);
for
(
int
k
=
0
; k
<
4
-
ss.length(); k
++
) {
sb.append(
'
0
'
);
}
sb.append(ss.toUpperCase());
}
else
{
sb.append(ch);
}
}
}
return
sb.toString();
}
}
超强的日期处理类:
package
com.sipgl.eam.utils;
import
java.text.SimpleDateFormat;
import
java.util.ArrayList;
import
java.util.Calendar;
import
java.util.Date;
import
java.util.GregorianCalendar;
import
java.util.LinkedHashMap;
/**
* 日期公用处理类
*
*
@author
SongJun
*
@version
1.3
*/
public
class
DateUtil {
/**
* 解析一个日期之间的所有月份
*
*
@param
beginDateStr
*
@param
endDateStr
*
@return
*/
public
static
ArrayList getMonthList(String beginDateStr, String endDateStr) {
//
指定要解析的时间格式
SimpleDateFormat f
=
new
SimpleDateFormat(
"
yyyy-MM
"
);
//
返回的月份列表
String sRet
=
""
;
//
定义一些变量
Date beginDate
=
null
;
Date endDate
=
null
;
GregorianCalendar beginGC
=
null
;
GregorianCalendar endGC
=
null
;
ArrayList list
=
new
ArrayList();
try
{
//
将字符串parse成日期
beginDate
=
f.parse(beginDateStr);
endDate
=
f.parse(endDateStr);
//
设置日历
beginGC
=
new
GregorianCalendar();
beginGC.setTime(beginDate);
endGC
=
new
GregorianCalendar();
endGC.setTime(endDate);
//
直到两个时间相同
while
(beginGC.getTime().compareTo(endGC.getTime())
<=
0
) {
sRet
=
beginGC.get(Calendar.YEAR)
+
"
-
"
+
(beginGC.get(Calendar.MONTH)
+
1
);
list.add(sRet);
//
以月为单位,增加时间
beginGC.add(Calendar.MONTH,
1
);
}
return
list;
}
catch
(Exception e) {
e.printStackTrace();
return
null
;
}
}
/**
* 解析一个日期段之间的所有日期
*
*
@param
beginDateStr
* 开始日期
*
@param
endDateStr
* 结束日期
*
@return
*/
public
static
ArrayList getDayList(String beginDateStr, String endDateStr) {
//
指定要解析的时间格式
SimpleDateFormat f
=
new
SimpleDateFormat(
"
yyyy-MM-dd
"
);
//
定义一些变量
Date beginDate
=
null
;
Date endDate
=
null
;
Calendar beginGC
=
null
;
Calendar endGC
=
null
;
ArrayList list
=
new
ArrayList();
try
{
//
将字符串parse成日期
beginDate
=
f.parse(beginDateStr);
endDate
=
f.parse(endDateStr);
//
设置日历
beginGC
=
Calendar.getInstance();
beginGC.setTime(beginDate);
endGC
=
Calendar.getInstance();
endGC.setTime(endDate);
SimpleDateFormat sdf
=
new
SimpleDateFormat(
"
yyyy-MM-dd
"
);
//
直到两个时间相同
while
(beginGC.getTime().compareTo(endGC.getTime())
<=
0
) {
list.add(sdf.format(beginGC.getTime()));
//
以日为单位,增加时间
beginGC.add(Calendar.DAY_OF_MONTH,
1
);
}
return
list;
}
catch
(Exception e) {
e.printStackTrace();
return
null
;
}
}
public
static
ArrayList getYearList() {
ArrayList list
=
new
ArrayList();
Calendar c
=
null
;
c
=
Calendar.getInstance();
c.setTime(
new
Date());
int
currYear
=
Calendar.getInstance().get(Calendar.YEAR);
int
startYear
=
currYear
-
5
;
int
endYear
=
currYear
+
10
;
for
(
int
i
=
startYear; i
<
endYear; i
++
) {
list.add(
new
Integer(i));
}
return
list;
}
public
static
int
getCurrYear() {
return
Calendar.getInstance().get(Calendar.YEAR);
}
/**
* 得到某一年周的总数
*
*
@param
year
*
@return
*/
public
static
LinkedHashMap getWeekList(
int
year) {
LinkedHashMap map
=
new
LinkedHashMap();
Calendar c
=
new
GregorianCalendar();
c.set(year, Calendar.DECEMBER,
31
,
23
,
59
,
59
);
int
count
=
getWeekOfYear(c.getTime());
SimpleDateFormat sdf
=
new
SimpleDateFormat(
"
yyyy-MM-dd
"
);
String dayOfWeekStart
=
""
;
String dayOfWeekEnd
=
""
;
for
(
int
i
=
1
; i
<=
count; i
++
) {
dayOfWeekStart
=
sdf.format(getFirstDayOfWeek(year, i));
dayOfWeekEnd
=
sdf.format(getLastDayOfWeek(year, i));
map.put(
new
Integer(i),
"
第
"
+
i
+
"
周(从
"
+
dayOfWeekStart
+
"
至
"
+
dayOfWeekEnd
+
"
)
"
);
}
return
map;
}
/**
* 得到一年的总周数
*
@param
year
*
@return
*/
public
static
int
getWeekCountInYear(
int
year){
Calendar c
=
new
GregorianCalendar();
c.set(year, Calendar.DECEMBER,
31
,
23
,
59
,
59
);
int
count
=
getWeekOfYear(c.getTime());
return
count;
}
/**
* 取得当前日期是多少周
*
*
@param
date
*
@return
*/
public
static
int
getWeekOfYear(Date date) {
Calendar c
=
new
GregorianCalendar();
c.setFirstDayOfWeek(Calendar.MONDAY);
c.setMinimalDaysInFirstWeek(
7
);
c.setTime(date);
return
c.get(Calendar.WEEK_OF_YEAR);
}
/**
* 得到某年某周的第一天
*
*
@param
year
*
@param
week
*
@return
*/
public
static
Date getFirstDayOfWeek(
int
year,
int
week) {
Calendar c
=
new
GregorianCalendar();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, Calendar.JANUARY);
c.set(Calendar.DATE,
1
);
Calendar cal
=
(GregorianCalendar) c.clone();
cal.add(Calendar.DATE, week
*
7
);
return
getFirstDayOfWeek(cal.getTime());
}
/**
* 得到某年某周的最后一天
*
*
@param
year
*
@param
week
*
@return
*/
public
static
Date getLastDayOfWeek(
int
year,
int
week) {
Calendar c
=
new
GregorianCalendar();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, Calendar.JANUARY);
c.set(Calendar.DATE,
1
);
Calendar cal
=
(GregorianCalendar) c.clone();
cal.add(Calendar.DATE, week
*
7
);
return
getLastDayOfWeek(cal.getTime());
}
/**
* 得到某年某月的第一天
*
@param
year
*
@param
month
*
@return
*/
public
static
Date getFirestDayOfMonth(
int
year,
int
month){
month
=
month
-
1
;
Calendar c
=
Calendar.getInstance();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, month);
int
day
=
c.getActualMinimum(c.DAY_OF_MONTH);
c.set(Calendar.DAY_OF_MONTH, day);
return
c.getTime();
}
/**
* 提到某年某月的最后一天
*
@param
year
*
@param
month
*
@return
*/
public
static
Date getLastDayOfMonth(
int
year,
int
month){
month
=
month
-
1
;
Calendar c
=
Calendar.getInstance();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, month);
int
day
=
c.getActualMaximum(c.DAY_OF_MONTH);
c.set(Calendar.DAY_OF_MONTH, day);
return
c.getTime();
}
/**
* 取得当前日期所在周的第一天
*
*
@param
date
*
@return
*/
public
static
Date getFirstDayOfWeek(Date date) {
Calendar c
=
new
GregorianCalendar();
c.setFirstDayOfWeek(Calendar.MONDAY);
c.setTime(date);
c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek());
//
Monday
return
c.getTime();
}
/**
* 取得当前日期所在周的最后一天
*
*
@param
date
*
@return
*/
public
static
Date getLastDayOfWeek(Date date) {
Calendar c
=
new
GregorianCalendar();
c.setFirstDayOfWeek(Calendar.MONDAY);
c.setTime(date);
c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek()
+
6
);
//
Sunday
return
c.getTime();
}
}
一个超强的字符串处理类
package
net.java2000.tools;
/**
* Title: Java Bean 工具
* Description:
* Copyright: Copyright (c) 2001
* Company: JAVA世纪网 http://www.java2000.net
*
@author
赵学庆
*
@version
1.0
*/
import
java.util.
*
;
import
java.util.regex.Pattern;
public
class
StrTools {
/**
* 分割字符串
*
*
@param
str String 原始字符串
*
@param
splitsign String 分隔符
*
@return
String[] 分割后的字符串数组
*/
@SuppressWarnings(
"
unchecked
"
)
public
static
String[] split(String str, String splitsign) {
int
index;
if
(str
==
null
||
splitsign
==
null
)
return
null
;
ArrayList al
=
new
ArrayList();
while
((index
=
str.indexOf(splitsign))
!=
-
1
) {
al.add(str.substring(
0
, index));
str
=
str.substring(index
+
splitsign.length());
}
al.add(str);
return
(String[]) al.toArray(
new
String[
0
]);
}
/**
* 替换字符串
*
*
@param
from String 原始字符串
*
@param
to String 目标字符串
*
@param
source String 母字符串
*
@return
String 替换后的字符串
*/
public
static
String replace(String from, String to, String source) {
if
(source
==
null
||
from
==
null
||
to
==
null
)
return
null
;
StringBuffer bf
=
new
StringBuffer(
""
);
int
index
=
-
1
;
while
((index
=
source.indexOf(from))
!=
-
1
) {
bf.append(source.substring(
0
, index)
+
to);
source
=
source.substring(index
+
from.length());
index
=
source.indexOf(from);
}
bf.append(source);
return
bf.toString();
}
/**
* 替换字符串,能能够在HTML页面上直接显示(替换双引号和小于号)
*
*
@param
str String 原始字符串
*
@return
String 替换后的字符串
*/
public
static
String htmlencode(String str) {
if
(str
==
null
) {
return
null
;
}
return
replace(
"
/"
"
,
"
"
"
, replace(
"
<
"
,
"
<
"
, str));
}
/**
* 替换字符串,将被编码的转换成原始码(替换成双引号和小于号)
*
*
@param
str String
*
@return
String
*/
public
static
String htmldecode(String str) {
if
(str
==
null
) {
return
null
;
}
return
replace(
"
"
"
,
"
/"
"
, replace(
"
<
"
,
"
<
"
, str));
}
private
static
final
String _BR
=
"
<br/>
"
;
/**
* 在页面上直接显示文本内容,替换小于号,空格,回车,TAB
*
*
@param
str String 原始字符串
*
@return
String 替换后的字符串
*/
public
static
String htmlshow(String str) {
if
(str
==
null
) {
return
null
;
}
str
=
replace(
"
<
"
,
"
<
"
, str);
str
=
replace(
"
"
,
"
"
, str);
str
=
replace(
"
/r/n
"
, _BR, str);
str
=
replace(
"
/n
"
, _BR, str);
str
=
replace(
"
/t
"
,
"
"
, str);
return
str;
}
/**
* 返回指定字节长度的字符串
*
*
@param
str String 字符串
*
@param
length int 指定长度
*
@return
String 返回的字符串
*/
public
static
String toLength(String str,
int
length) {
if
(str
==
null
) {
return
null
;
}
if
(length
<=
0
) {
return
""
;
}
try
{
if
(str.getBytes(
"
GBK
"
).length
<=
length) {
return
str;
}
}
catch
(Exception ex) {
}
StringBuffer buff
=
new
StringBuffer();
int
index
=
0
;
char
c;
length
-=
3
;
while
(length
>
0
) {
c
=
str.charAt(index);
if
(c
<
128
) {
length
--
;
}
else
{
length
--
;
length
--
;
}
buff.append(c);
index
++
;
}
buff.append(
"
...
"
);
return
buff.toString();
}
/**
* 判断是否为整数
*
*
@param
str 传入的字符串
*
@return
是整数返回true,否则返回false
*/
public
static
boolean
isInteger(String str) {
Pattern pattern
=
Pattern.compile(
"
^[-//+]?[//d]*$
"
);
return
pattern.matcher(str).matches();
}
/**
* 判断是否为浮点数,包括double和float
*
*
@param
str 传入的字符串
*
@return
是浮点数返回true,否则返回false
*/
public
static
boolean
isDouble(String str) {
Pattern pattern
=
Pattern.compile(
"
^[-//+]?[.//d]*$
"
);
return
pattern.matcher(str).matches();
}
/**
* 判断输入的字符串是否符合Email样式.
*
*
@param
str 传入的字符串
*
@return
是Email样式返回true,否则返回false
*/
public
static
boolean
isEmail(String str) {
Pattern pattern
=
Pattern.compile(
"
^//w+([-+.]//w+)*@//w+([-.]//w+)*//.//w+([-.]//w+)*$
"
);
return
pattern.matcher(str).matches();
}
/**
* 判断输入的字符串是否为纯汉字
*
*
@param
str 传入的字符窜
*
@return
如果是纯汉字返回true,否则返回false
*/
public
static
boolean
isChinese(String str) {
Pattern pattern
=
Pattern.compile(
"
[/u0391-/uFFE5]+$
"
);
return
pattern.matcher(str).matches();
}
/**
* 是否为空白,包括null和""
*
*
@param
str
*
@return
*/
public
static
boolean
isBlank(String str) {
return
str
==
null
||
str.trim().length()
==
0
;
}
/**
* 判断是否为质数
*
*
@param
x
*
@return
*/
public
static
boolean
isPrime(
int
x) {
if
(x
<=
7
) {
if
(x
==
2
||
x
==
3
||
x
==
5
||
x
==
7
)
return
true
;
}
int
c
=
7
;
if
(x
%
2
==
0
)
return
false
;
if
(x
%
3
==
0
)
return
false
;
if
(x
%
5
==
0
)
return
false
;
int
end
=
(
int
) Math.sqrt(x);
while
(c
<=
end) {
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
4
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
2
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
4
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
2
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
4
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
6
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
2
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
6
;
}
return
true
;
}
public
static
void
main(String[] args) {
String[] numbers
=
{
"
12345
"
,
"
-12345
"
,
"
123.45
"
,
"
-123.45
"
,
"
.12345
"
,
"
-.12345
"
,
"
a12345
"
,
"
12345a
"
,
"
123.a45
"
};
for
(String str : numbers) {
System.out.println(str
+
"
=
"
+
isInteger(str)
+
"
"
+
isDouble(str));
}
String[] emails
=
{
"
1@2.com
"
,
"
1.2@3.com
"
,
"
1@3.4.5.com
"
};
for
(String str : emails) {
System.out.println(str
+
"
=
"
+
isEmail(str));
}
String[] chineses
=
{
"
中国
"
,
"
1中国
"
,
"
中国1
"
,
"
1中国2
"
,
"
中1国
"
};
for
(String str : chineses) {
System.out.println(str
+
"
=
"
+
isChinese(str));
}
}
}
DecimalFormat df = new DecimalFormat(",###.00");
double aNumber = 33665448856.6568975;
String result = df.format(aNumber);
Sytem. out.println(result);
输出结果为:
33,665,448,856.66
分析字符串
StringTokenizer(String s) 构造一个分析器,使用默认分隔字符(空格,换行,回车,Tab,进纸符)
StringTokenizer(String s,String delim) delim是自己定义的分隔符
nextToken() 逐个获取字符串中的语言符号
boolean hasMoreTokens() 只要字符串还有语言符号将返回true,否则返回false
countTokens() 得到一共有多少个语言符号
数组的选择排序
public void ListNum(int[] a){
for(int k=0;k<a.length-1;k++){
int j=k;
int mini=a[k];
for(int i=k+1;i<a.length;i++){
if(a[k]>a[i]){
a[k]=a[i];
j=i;
}
}
a[j]=mini;
}
}
MD5和一个可逆加密算法相接合的加密和解密程序
import java.security.MessageDigest;
/**
*先通过MD5加密之后,再来一次可逆的加密。
*顺序可以调整,可以选择先用可逆加密,然后再用MD5加密
*/
public class MD5andKL{
//MD5加码。32位
public static String MD5(String inStr) {
MessageDigest md5 = null;
try {
md5 = MessageDigest.getInstance("MD5");
} catch (Exception e) {
System.out.println(e.toString());
e.printStackTrace();
return "";
}
char[] charArray = inStr.toCharArray();
byte[] byteArray = new byte[charArray.length];
for (int i = 0; i < charArray.length; i++)
byteArray[i] = (byte) charArray[i];
byte[] md5Bytes = md5.digest(byteArray);
StringBuffer hexValue = new StringBuffer();
for (int i = 0; i < md5Bytes.length; i++) {
int val = ((int) md5Bytes[i]) & 0xff;
if (val < 16)
hexValue.append("0");
hexValue.append(Integer.toHexString(val));
}
return hexValue.toString();
}
//可逆的加密算法
public static String KL(String inStr){
//String s = new String(inStr);
char[] a = inStr.toCharArray();
for (int i = 0;i <a.length;i++) {
a[i] = (char)(a[i]^'t');
}
String s=new String(a);
return s;
}
//加密后解密
public static String JM(String inStr){
char[] a=inStr.toCharArray();
for (int i = 0;i <a.length;i++) {
a[i]= (char)(a[i]^'t');
}
String k=new String(a);
return k;
}
//测试主函数
public static void main (String args[]){
String s = new String("admin");
System.out.println("原始:"+s);
System.out.println("MD5后:"+MD5(s));
System.out.println("MD5后再加密:"+KL(MD5(s)));
System.out.println("解密为MD5后的:"+JM(KL(MD5(s))));
}
}
任意对象转化为JSON
import
java.beans.IntrospectionException;
import
java.beans.Introspector;
import
java.beans.PropertyDescriptor;
import
java.math.BigDecimal;
import
java.math.BigInteger;
import
java.util.List;
import
java.util.Map;
import
java.util.Set;
/**
* 序列化对象为JSON格式 遵循JSON组织公布标准
*
* @date 2008/05/07
*
@version
1.0.0
*/
public
class
Json {
/**
Commons Logging instance.
*/
private
static
org.apache.commons.logging.Log log
=
org.apache.commons.logging.LogFactory.getLog(Json.
class
);
/**
*
@param
obj 任意对象
*
@return
String
*/
public
static
String object2json(Object obj) {
StringBuilder json
=
new
StringBuilder();
if
(obj
==
null
) {
json.append(
"
/"/"
"
);
}
else
if
(obj
instanceof
String
||
obj
instanceof
Integer
||
obj
instanceof
Float
||
obj
instanceof
Boolean
||
obj
instanceof
Short
||
obj
instanceof
Double
||
obj
instanceof
Long
||
obj
instanceof
BigDecimal
||
obj
instanceof
BigInteger
||
obj
instanceof
Byte) {
json.append(
"
/"
"
).append(string2json(obj.toString())).append(
"
/"
"
);
}
else
if
(obj
instanceof
Object[]) {
json.append(array2json((Object[]) obj));
}
else
if
(obj
instanceof
List) {
json.append(list2json((List
<?>
) obj));
}
else
if
(obj
instanceof
Map) {
json.append(map2json((Map
<?
,
?>
) obj));
}
else
if
(obj
instanceof
Set) {
json.append(set2json((Set
<?>
) obj));
}
else
{
json.append(bean2json(obj));
}
return
json.toString();
}
/**
*
@param
bean bean对象
*
@return
String
*/
public
static
String bean2json(Object bean) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
{
"
);
PropertyDescriptor[] props
=
null
;
try
{
props
=
Introspector.getBeanInfo(bean.getClass(), Object.
class
).getPropertyDescriptors();
}
catch
(IntrospectionException e) {
}
if
(props
!=
null
) {
for
(
int
i
=
0
; i
<
props.length; i
++
) {
try
{
String name
=
object2json(props[i].getName());
String value
=
object2json(props[i].getReadMethod().invoke(bean));
json.append(name);
json.append(
"
:
"
);
json.append(value);
json.append(
"
,
"
);
}
catch
(Exception e) {
}
}
json.setCharAt(json.length()
-
1
,
'
}
'
);
}
else
{
json.append(
"
}
"
);
}
return
json.toString();
}
/**
*
@param
list list对象
*
@return
String
*/
public
static
String list2json(List
<?>
list) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
[
"
);
if
(list
!=
null
&&
list.size()
>
0
) {
for
(Object obj : list) {
json.append(object2json(obj));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
]
'
);
}
else
{
json.append(
"
]
"
);
}
return
json.toString();
}
/**
*
@param
array 对象数组
*
@return
String
*/
public
static
String array2json(Object[] array) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
[
"
);
if
(array
!=
null
&&
array.length
>
0
) {
for
(Object obj : array) {
json.append(object2json(obj));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
]
'
);
}
else
{
json.append(
"
]
"
);
}
return
json.toString();
}
/**
*
@param
map map对象
*
@return
String
*/
public
static
String map2json(Map
<?
,
?>
map) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
{
"
);
if
(map
!=
null
&&
map.size()
>
0
) {
for
(Object key : map.keySet()) {
json.append(object2json(key));
json.append(
"
:
"
);
json.append(object2json(map.get(key)));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
}
'
);
}
else
{
json.append(
"
}
"
);
}
return
json.toString();
}
/**
*
@param
set 集合对象
*
@return
String
*/
public
static
String set2json(Set
<?>
set) {
StringBuilder json
=
new
StringBuilder();
json.append(
"
[
"
);
if
(set
!=
null
&&
set.size()
>
0
) {
for
(Object obj : set) {
json.append(object2json(obj));
json.append(
"
,
"
);
}
json.setCharAt(json.length()
-
1
,
'
]
'
);
}
else
{
json.append(
"
]
"
);
}
return
json.toString();
}
/**
*
@param
s 参数
*
@return
String
*/
public
static
String string2json(String s) {
if
(s
==
null
)
return
""
;
StringBuilder sb
=
new
StringBuilder();
for
(
int
i
=
0
; i
<
s.length(); i
++
) {
char
ch
=
s.charAt(i);
switch
(ch) {
case
'
"
'
:
sb.append(
"
///"
"
);
break
;
case
'
//
'
:
sb.append(
"
////
"
);
break
;
case
'
/b
'
:
sb.append(
"
//b
"
);
break
;
case
'
/f
'
:
sb.append(
"
//f
"
);
break
;
case
'
/n
'
:
sb.append(
"
//n
"
);
break
;
case
'
/r
'
:
sb.append(
"
//r
"
);
break
;
case
'
/t
'
:
sb.append(
"
//t
"
);
break
;
case
'
/
'
:
sb.append(
"
///
"
);
break
;
default
:
if
(ch
>=
'
/u0000
'
&&
ch
<=
'
/u001F
'
) {
String ss
=
Integer.toHexString(ch);
sb.append(
"
//u
"
);
for
(
int
k
=
0
; k
<
4
-
ss.length(); k
++
) {
sb.append(
'
0
'
);
}
sb.append(ss.toUpperCase());
}
else
{
sb.append(ch);
}
}
}
return
sb.toString();
}
}
/** * 用半角的特殊符号代替全角的特殊符号 * 防止特殊字符在传输参数时出现错误 * */ public class ReplaceStrE{ public static String rightToError(String ss){ String strs; String strs1; String strs2; String strs3; String strs4; try { strs = ss.replace( ' # ' , ' # ' ); } catch (Exception ex){ return ss; } try { strs1 = strs.replace( ' " ' , ' " ' ); } catch (Exception ex){ return strs; } try { strs2 = strs1.replace( ' ' , ' & ' ); } catch (Exception ex){ return strs1; } try { strs3 = strs2.replace( ' + ' , ' + ' ); } catch (Exception ex){ return strs2; } try { strs4 = strs3.replace( ' ' ' , ' /' ' ); } catch (Exception ex){ return ss; } return strs4; } }
/** * Big5字与Unicode的互换 * 转换后的正常字型 */ import java.io. * ; public class MyUtil{ public static String big5ToUnicode(String s){ try { return new String(s.getBytes( " ISO8859_1 " ), " Big5 " ); } catch (UnsupportedEncodingException uee){ return s; } } public static String UnicodeTobig5(String s){ try { return new String(s.getBytes( " Big5 " ), " ISO8859_1 " ); } catch (UnsupportedEncodingException uee){ return s; } } public static String toHexString(String s){ String str = "" ; for ( int i = 0 ; i < s.length(); i ++ ){ int ch = ( int )s.charAt(i); String s4 = " 0000 " + Integer.toHexString(ch); str = str + s4.substring(s4.length() - 4 ) + " " ; } return str; } }
超强的日期处理类:
package
com.sipgl.eam.utils;
import
java.text.SimpleDateFormat;
import
java.util.ArrayList;
import
java.util.Calendar;
import
java.util.Date;
import
java.util.GregorianCalendar;
import
java.util.LinkedHashMap;
/**
* 日期公用处理类
*
*
@author
SongJun
*
@version
1.3
*/
public
class
DateUtil {
/**
* 解析一个日期之间的所有月份
*
*
@param
beginDateStr
*
@param
endDateStr
*
@return
*/
public
static
ArrayList getMonthList(String beginDateStr, String endDateStr) {
//
指定要解析的时间格式
SimpleDateFormat f
=
new
SimpleDateFormat(
"
yyyy-MM
"
);
//
返回的月份列表
String sRet
=
""
;
//
定义一些变量
Date beginDate
=
null
;
Date endDate
=
null
;
GregorianCalendar beginGC
=
null
;
GregorianCalendar endGC
=
null
;
ArrayList list
=
new
ArrayList();
try
{
//
将字符串parse成日期
beginDate
=
f.parse(beginDateStr);
endDate
=
f.parse(endDateStr);
//
设置日历
beginGC
=
new
GregorianCalendar();
beginGC.setTime(beginDate);
endGC
=
new
GregorianCalendar();
endGC.setTime(endDate);
//
直到两个时间相同
while
(beginGC.getTime().compareTo(endGC.getTime())
<=
0
) {
sRet
=
beginGC.get(Calendar.YEAR)
+
"
-
"
+
(beginGC.get(Calendar.MONTH)
+
1
);
list.add(sRet);
//
以月为单位,增加时间
beginGC.add(Calendar.MONTH,
1
);
}
return
list;
}
catch
(Exception e) {
e.printStackTrace();
return
null
;
}
}
/**
* 解析一个日期段之间的所有日期
*
*
@param
beginDateStr
* 开始日期
*
@param
endDateStr
* 结束日期
*
@return
*/
public
static
ArrayList getDayList(String beginDateStr, String endDateStr) {
//
指定要解析的时间格式
SimpleDateFormat f
=
new
SimpleDateFormat(
"
yyyy-MM-dd
"
);
//
定义一些变量
Date beginDate
=
null
;
Date endDate
=
null
;
Calendar beginGC
=
null
;
Calendar endGC
=
null
;
ArrayList list
=
new
ArrayList();
try
{
//
将字符串parse成日期
beginDate
=
f.parse(beginDateStr);
endDate
=
f.parse(endDateStr);
//
设置日历
beginGC
=
Calendar.getInstance();
beginGC.setTime(beginDate);
endGC
=
Calendar.getInstance();
endGC.setTime(endDate);
SimpleDateFormat sdf
=
new
SimpleDateFormat(
"
yyyy-MM-dd
"
);
//
直到两个时间相同
while
(beginGC.getTime().compareTo(endGC.getTime())
<=
0
) {
list.add(sdf.format(beginGC.getTime()));
//
以日为单位,增加时间
beginGC.add(Calendar.DAY_OF_MONTH,
1
);
}
return
list;
}
catch
(Exception e) {
e.printStackTrace();
return
null
;
}
}
public
static
ArrayList getYearList() {
ArrayList list
=
new
ArrayList();
Calendar c
=
null
;
c
=
Calendar.getInstance();
c.setTime(
new
Date());
int
currYear
=
Calendar.getInstance().get(Calendar.YEAR);
int
startYear
=
currYear
-
5
;
int
endYear
=
currYear
+
10
;
for
(
int
i
=
startYear; i
<
endYear; i
++
) {
list.add(
new
Integer(i));
}
return
list;
}
public
static
int
getCurrYear() {
return
Calendar.getInstance().get(Calendar.YEAR);
}
/**
* 得到某一年周的总数
*
*
@param
year
*
@return
*/
public
static
LinkedHashMap getWeekList(
int
year) {
LinkedHashMap map
=
new
LinkedHashMap();
Calendar c
=
new
GregorianCalendar();
c.set(year, Calendar.DECEMBER,
31
,
23
,
59
,
59
);
int
count
=
getWeekOfYear(c.getTime());
SimpleDateFormat sdf
=
new
SimpleDateFormat(
"
yyyy-MM-dd
"
);
String dayOfWeekStart
=
""
;
String dayOfWeekEnd
=
""
;
for
(
int
i
=
1
; i
<=
count; i
++
) {
dayOfWeekStart
=
sdf.format(getFirstDayOfWeek(year, i));
dayOfWeekEnd
=
sdf.format(getLastDayOfWeek(year, i));
map.put(
new
Integer(i),
"
第
"
+
i
+
"
周(从
"
+
dayOfWeekStart
+
"
至
"
+
dayOfWeekEnd
+
"
)
"
);
}
return
map;
}
/**
* 得到一年的总周数
*
@param
year
*
@return
*/
public
static
int
getWeekCountInYear(
int
year){
Calendar c
=
new
GregorianCalendar();
c.set(year, Calendar.DECEMBER,
31
,
23
,
59
,
59
);
int
count
=
getWeekOfYear(c.getTime());
return
count;
}
/**
* 取得当前日期是多少周
*
*
@param
date
*
@return
*/
public
static
int
getWeekOfYear(Date date) {
Calendar c
=
new
GregorianCalendar();
c.setFirstDayOfWeek(Calendar.MONDAY);
c.setMinimalDaysInFirstWeek(
7
);
c.setTime(date);
return
c.get(Calendar.WEEK_OF_YEAR);
}
/**
* 得到某年某周的第一天
*
*
@param
year
*
@param
week
*
@return
*/
public
static
Date getFirstDayOfWeek(
int
year,
int
week) {
Calendar c
=
new
GregorianCalendar();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, Calendar.JANUARY);
c.set(Calendar.DATE,
1
);
Calendar cal
=
(GregorianCalendar) c.clone();
cal.add(Calendar.DATE, week
*
7
);
return
getFirstDayOfWeek(cal.getTime());
}
/**
* 得到某年某周的最后一天
*
*
@param
year
*
@param
week
*
@return
*/
public
static
Date getLastDayOfWeek(
int
year,
int
week) {
Calendar c
=
new
GregorianCalendar();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, Calendar.JANUARY);
c.set(Calendar.DATE,
1
);
Calendar cal
=
(GregorianCalendar) c.clone();
cal.add(Calendar.DATE, week
*
7
);
return
getLastDayOfWeek(cal.getTime());
}
/**
* 得到某年某月的第一天
*
@param
year
*
@param
month
*
@return
*/
public
static
Date getFirestDayOfMonth(
int
year,
int
month){
month
=
month
-
1
;
Calendar c
=
Calendar.getInstance();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, month);
int
day
=
c.getActualMinimum(c.DAY_OF_MONTH);
c.set(Calendar.DAY_OF_MONTH, day);
return
c.getTime();
}
/**
* 提到某年某月的最后一天
*
@param
year
*
@param
month
*
@return
*/
public
static
Date getLastDayOfMonth(
int
year,
int
month){
month
=
month
-
1
;
Calendar c
=
Calendar.getInstance();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, month);
int
day
=
c.getActualMaximum(c.DAY_OF_MONTH);
c.set(Calendar.DAY_OF_MONTH, day);
return
c.getTime();
}
/**
* 取得当前日期所在周的第一天
*
*
@param
date
*
@return
*/
public
static
Date getFirstDayOfWeek(Date date) {
Calendar c
=
new
GregorianCalendar();
c.setFirstDayOfWeek(Calendar.MONDAY);
c.setTime(date);
c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek());
//
Monday
return
c.getTime();
}
/**
* 取得当前日期所在周的最后一天
*
*
@param
date
*
@return
*/
public
static
Date getLastDayOfWeek(Date date) {
Calendar c
=
new
GregorianCalendar();
c.setFirstDayOfWeek(Calendar.MONDAY);
c.setTime(date);
c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek()
+
6
);
//
Sunday
return
c.getTime();
}
}
一个超强的字符串处理类
package
net.java2000.tools;
/**
* Title: Java Bean 工具
* Description:
* Copyright: Copyright (c) 2001
* Company: JAVA世纪网 http://www.java2000.net
*
@author
赵学庆
*
@version
1.0
*/
import
java.util.
*
;
import
java.util.regex.Pattern;
public
class
StrTools {
/**
* 分割字符串
*
*
@param
str String 原始字符串
*
@param
splitsign String 分隔符
*
@return
String[] 分割后的字符串数组
*/
@SuppressWarnings(
"
unchecked
"
)
public
static
String[] split(String str, String splitsign) {
int
index;
if
(str
==
null
||
splitsign
==
null
)
return
null
;
ArrayList al
=
new
ArrayList();
while
((index
=
str.indexOf(splitsign))
!=
-
1
) {
al.add(str.substring(
0
, index));
str
=
str.substring(index
+
splitsign.length());
}
al.add(str);
return
(String[]) al.toArray(
new
String[
0
]);
}
/**
* 替换字符串
*
*
@param
from String 原始字符串
*
@param
to String 目标字符串
*
@param
source String 母字符串
*
@return
String 替换后的字符串
*/
public
static
String replace(String from, String to, String source) {
if
(source
==
null
||
from
==
null
||
to
==
null
)
return
null
;
StringBuffer bf
=
new
StringBuffer(
""
);
int
index
=
-
1
;
while
((index
=
source.indexOf(from))
!=
-
1
) {
bf.append(source.substring(
0
, index)
+
to);
source
=
source.substring(index
+
from.length());
index
=
source.indexOf(from);
}
bf.append(source);
return
bf.toString();
}
/**
* 替换字符串,能能够在HTML页面上直接显示(替换双引号和小于号)
*
*
@param
str String 原始字符串
*
@return
String 替换后的字符串
*/
public
static
String htmlencode(String str) {
if
(str
==
null
) {
return
null
;
}
return
replace(
"
/"
"
,
"
"
"
, replace(
"
<
"
,
"
<
"
, str));
}
/**
* 替换字符串,将被编码的转换成原始码(替换成双引号和小于号)
*
*
@param
str String
*
@return
String
*/
public
static
String htmldecode(String str) {
if
(str
==
null
) {
return
null
;
}
return
replace(
"
"
"
,
"
/"
"
, replace(
"
<
"
,
"
<
"
, str));
}
private
static
final
String _BR
=
"
<br/>
"
;
/**
* 在页面上直接显示文本内容,替换小于号,空格,回车,TAB
*
*
@param
str String 原始字符串
*
@return
String 替换后的字符串
*/
public
static
String htmlshow(String str) {
if
(str
==
null
) {
return
null
;
}
str
=
replace(
"
<
"
,
"
<
"
, str);
str
=
replace(
"
"
,
"
"
, str);
str
=
replace(
"
/r/n
"
, _BR, str);
str
=
replace(
"
/n
"
, _BR, str);
str
=
replace(
"
/t
"
,
"
"
, str);
return
str;
}
/**
* 返回指定字节长度的字符串
*
*
@param
str String 字符串
*
@param
length int 指定长度
*
@return
String 返回的字符串
*/
public
static
String toLength(String str,
int
length) {
if
(str
==
null
) {
return
null
;
}
if
(length
<=
0
) {
return
""
;
}
try
{
if
(str.getBytes(
"
GBK
"
).length
<=
length) {
return
str;
}
}
catch
(Exception ex) {
}
StringBuffer buff
=
new
StringBuffer();
int
index
=
0
;
char
c;
length
-=
3
;
while
(length
>
0
) {
c
=
str.charAt(index);
if
(c
<
128
) {
length
--
;
}
else
{
length
--
;
length
--
;
}
buff.append(c);
index
++
;
}
buff.append(
"
...
"
);
return
buff.toString();
}
/**
* 判断是否为整数
*
*
@param
str 传入的字符串
*
@return
是整数返回true,否则返回false
*/
public
static
boolean
isInteger(String str) {
Pattern pattern
=
Pattern.compile(
"
^[-//+]?[//d]*$
"
);
return
pattern.matcher(str).matches();
}
/**
* 判断是否为浮点数,包括double和float
*
*
@param
str 传入的字符串
*
@return
是浮点数返回true,否则返回false
*/
public
static
boolean
isDouble(String str) {
Pattern pattern
=
Pattern.compile(
"
^[-//+]?[.//d]*$
"
);
return
pattern.matcher(str).matches();
}
/**
* 判断输入的字符串是否符合Email样式.
*
*
@param
str 传入的字符串
*
@return
是Email样式返回true,否则返回false
*/
public
static
boolean
isEmail(String str) {
Pattern pattern
=
Pattern.compile(
"
^//w+([-+.]//w+)*@//w+([-.]//w+)*//.//w+([-.]//w+)*$
"
);
return
pattern.matcher(str).matches();
}
/**
* 判断输入的字符串是否为纯汉字
*
*
@param
str 传入的字符窜
*
@return
如果是纯汉字返回true,否则返回false
*/
public
static
boolean
isChinese(String str) {
Pattern pattern
=
Pattern.compile(
"
[/u0391-/uFFE5]+$
"
);
return
pattern.matcher(str).matches();
}
/**
* 是否为空白,包括null和""
*
*
@param
str
*
@return
*/
public
static
boolean
isBlank(String str) {
return
str
==
null
||
str.trim().length()
==
0
;
}
/**
* 判断是否为质数
*
*
@param
x
*
@return
*/
public
static
boolean
isPrime(
int
x) {
if
(x
<=
7
) {
if
(x
==
2
||
x
==
3
||
x
==
5
||
x
==
7
)
return
true
;
}
int
c
=
7
;
if
(x
%
2
==
0
)
return
false
;
if
(x
%
3
==
0
)
return
false
;
if
(x
%
5
==
0
)
return
false
;
int
end
=
(
int
) Math.sqrt(x);
while
(c
<=
end) {
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
4
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
2
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
4
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
2
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
4
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
6
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
2
;
if
(x
%
c
==
0
) {
return
false
;
}
c
+=
6
;
}
return
true
;
}
public
static
void
main(String[] args) {
String[] numbers
=
{
"
12345
"
,
"
-12345
"
,
"
123.45
"
,
"
-123.45
"
,
"
.12345
"
,
"
-.12345
"
,
"
a12345
"
,
"
12345a
"
,
"
123.a45
"
};
for
(String str : numbers) {
System.out.println(str
+
"
=
"
+
isInteger(str)
+
"
"
+
isDouble(str));
}
String[] emails
=
{
"
1@2.com
"
,
"
1.2@3.com
"
,
"
1@3.4.5.com
"
};
for
(String str : emails) {
System.out.println(str
+
"
=
"
+
isEmail(str));
}
String[] chineses
=
{
"
中国
"
,
"
1中国
"
,
"
中国1
"
,
"
1中国2
"
,
"
中1国
"
};
for
(String str : chineses) {
System.out.println(str
+
"
=
"
+
isChinese(str));
}
}
}
相关文章推荐
- JAVA常用操作语句----项目中的总结二
- JAVA常用操作语句----项目中的总结一
- java 集合类及其常用操作总结
- java基础之数组常用操作总结(必看篇)
- Java API 与Hbase集群交互常用操作总结
- java对时间操作的常用总结
- 个人项目-密码管理-总结二(常用SQL语句汇总)
- linux上操作web项目常用实用命令总结
- 从Java转iOS第一个项目总结(常用第三方,工具介绍)
- java中的io系统总结及一些常用的操作
- Java Jxl Excel 操作总结5(项目实例二)
- java操作Excel常用方法总结(POI)
- Java 常用字符串操作总结
- Java基础学习总结(70)——开发Java项目常用的工具汇总
- Java Jxl Excel 操作总结4(项目实例 一)
- java操作hbase常用方法总结
- Java基础学习总结(70)——开发Java项目常用的工具汇总
- java 基础学习总结(附带eclipse一些常用操作)
- 项目中常用SQL语句总结
- [SHELL]20150621前总结——基本常用操作语句