收藏 分享(赏)

java常用函数.doc

上传人:精品资料 文档编号:10919560 上传时间:2020-01-21 格式:DOC 页数:16 大小:55.14KB
下载 相关 举报
java常用函数.doc_第1页
第1页 / 共16页
java常用函数.doc_第2页
第2页 / 共16页
java常用函数.doc_第3页
第3页 / 共16页
java常用函数.doc_第4页
第4页 / 共16页
java常用函数.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、Java 代码 1. /* 2. * 根据传入的格式获取日期 3. * 4. * param format 5. * 如:YYYYMMDD | MM/dd/yyyy, hh:mm:ss 6. * return 字符串的日期 7. */ 8. public String getSysDate(String format) 9. String dateStr = “; 10. try 11. Format formatter; 12. Date date = new Date(); 13. formatter = new SimpleDateFormat(format); 14. dateStr

2、= formatter.format(date); 15. catch (Exception e) 16. System.out.println(e); 17. 18. return dateStr; 19. 20. /* 21. * 根据传入的格式获取日期 22. * 23. * param format 24. * 如:YYYYMMDD | MM/dd/yyyy, hh:mm:ss 25. * return 字符串的日期 26. */ 27. public String getFormatDate(Date date, String format) 28. String dateStr =

3、 “; 29. try 30. Format formatter; 31. formatter = new SimpleDateFormat(format); 32. dateStr = formatter.format(date); 33. catch (Exception e) 34. System.out.println(e); 35. 36. return dateStr; 37. 38. /* 39. * 获取分割后的字符串数组信息 40. * 41. * param Str 42. * param Split 43. * return 字符串数组 44. */ 45. public

4、 String getSplit(String Str, String Split) 46. return Str.split(Split); 47. 48. /* 49. * 把字符串转换成指定的日期格式 50. * 51. * param str 52. * param format 53. * return 54. */ 55. public Date Convert(String str, String format) 56. java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(format); 57. try

5、 58. java.util.Date d = sdf.parse(str); 59. return d; 60. catch (Exception ex) 61. ex.printStackTrace(); 62. return null; 63. 64. 65. /* 66. * 获取月的天数 67. * 68. * param year 69. * param month 70. * return 71. */ 72. public static int getdays(String year, String month) 73. int yearInt = Integer.parseI

6、nt(year); 74. int monthInt = Integer.parseInt(month); 75. int monthdays = 31; 76. switch (monthInt) 77. case 1: 78. case 3: 79. case 5: 80. case 7: 81. case 8: 82. case 10: 83. case 12: 84. monthdays = 31; 85. break; 86. 87. case 2: 88. if (isLeapyear(yearInt) 89. monthdays = 29; 90. else 91. monthd

7、ays = 28; 92. 93. break; 94. 95. case 4: 96. case 6: 97. case 9: 98. case 11: 99. monthdays = 30; 100. break; 101. 102. 103. return monthdays; 104. 105. 106. /* 107. * 判断闰年 108. * 109. * param year 110. * return 111. */ 112. public static boolean isLeapyear(int year) 113. if (year % 4 = 0 115. else

8、116. return false; 117. 118. 119. 120. /* 121. * 判断某天是星期几 122. * 123. * param strDate 124. * return 0 表示是星期天 125. */ 126. public static int getWeekByDate(String strDate) 127. int dayOfWeek = 0; 128. try 129. 130. SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd“); 131. Calendar calendar = Cal

9、endar.getInstance(); 132. Date date = new Date(); 133. date = sdf.parse(strDate); 134. calendar.setTime(date); 135. dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); 136. catch (Exception e) 137. e.printStackTrace(); 138. 139. return dayOfWeek - 1; 140. 141. /* 142. * 判断字符串是不是数字 143. * 144. * param st

10、r 145. * return 146. */ 147. public static boolean isNumeric(String str) 148. Pattern pattern = Ppile(“0-9*“); 149. Matcher isNum = pattern.matcher(str); 150. if (!isNum.matches() 151. return false; 152. 153. return true; 154. 155. /* 156. * 获得距给定日期 countday 的字符串格式 157. * 158. * param date 159. * pa

11、ram countday 160. * param flag 161. * 为 true 表示日期前,为 false 表示日期后 162. * return YYYY-MM-DD 163. */ 164. public String getDateString(Date date, int countday, boolean flag) 165. String datestr = “; 166. if (flag) 167. datestr = getFormatDate(new Date(new Date().getTime() - countday 168. * 24 * 60 * 60

12、* 1000l), “yyyy-MM-dd“); 169. else 170. datestr = getFormatDate(new Date(new Date().getTime() + countday 171. * 24 * 60 * 60 * 1000l), “yyyy-MM-dd“); 172. 173. return datestr; 174. 175. /*176. * 根据两个时间判断时间差 177. * throws ParseException 178. * throws ParseException 179. */180. public Long getDateDiff

13、erence(Date date1,Date date2) throws ParseException 181. / Date date1 = new SimpleDateFormat(“yyyy-mm-dd“).parse(“2008-3-31“); 182. / Date date2 = new SimpleDateFormat(“yyyy-mm-dd“).parse(“2008-3-30“); 183. / 日期相减得到相差的日期 184. long day = (date1.getTime() -date2.getTime() / (24 * 60 * 60 * 1000) 0 ? (

14、date1 185. .getTime() - date2.getTime() 186. / (24 * 60 * 60 * 1000) 187. : (date2.getTime() - date1.getTime() / (24 * 60 * 60 * 1000); 188. return day; 189. 190. 191. /*192. * 根据两个时间来判断时间的差值 193. * param days 194. * return 195. */ 196. public Long getDateDifference1(Date date1,Date date2) throws Pa

15、rseException 197. / 日期相减得到相差的日期 198. long day = (date1.getTime() - date2.getTime()/ (24 * 60 * 60 * 1000); 199. return day; 200. 201. /*202. * 返回当前时间的一个时间差时间 203. * param days 204. * return 205. */ 206. public static String Ds(int days) 207. SimpleDateFormat form = new SimpleDateFormat(“yyyy-MM-dd“)

16、; 208. Calendar calendar = Calendar.getInstance(); 209. int day = calendar.get(Calendar.DAY_OF_YEAR); 210. calendar.set(Calendar.DAY_OF_YEAR, day - days); 211. Date cc = calendar.getTime(); 212. return form.format(cc); 213. 214. /* 215. * 获取系统当前时间 216. */ 217. public static Date getSystemDate() 218.

17、 SimpleDateFormat sf = new SimpleDateFormat(“yyyy-MM-dd“); 219. Date date = new Date(); 220. try 221. return new SimpleDateFormat(“yyyy-mm-dd“).parse(sf.format(date); 222. catch (ParseException e) 223. 224. return null; 225. 226. /* 227. * 判断是否为整数 228. * 229. * param str 传入的字符串 230. * return 是整数返回 t

18、rue,否则返回 false 231. */ 232. public static boolean isInteger(String str) 233. Pattern pattern = Ppile(“-+?d*$“); 234. return pattern.matcher(str).matches(); 235. 236. /* 237. * 判断是否为浮点数,包括 double 和 float 238. * 239. * param str 传入的字符串 240. * return 是浮点数返回 true,否则返回 false 241. */ 242. public static bo

19、olean isDouble(String str) 243. Pattern pattern = Ppile(“-+?.d*$“); 244. return pattern.matcher(str).matches(); 245. 246. /* 247. * 判断输入的字符串是否符合 Email 样式. 248. * 249. * param str 传入的字符串 250. * return 是 Email 样式返回 true,否则返回 false 251. */ 252. public static boolean isEmail(String str) 253. Pattern pat

20、tern = Ppile(“w+(-+.w+)*w+(-.w+)*.w+(-.w+)*$“); 254. return pattern.matcher(str).matches(); 255. 256. /* 257. * 判断输入的字符串是否为纯汉字 258. * 259. * param str 传入的字符窜 260. * return 如果是纯汉字返回 true,否则返回 false 261. */ 262. public static boolean isChinese(String str) 263. Pattern pattern = Ppile(“u0391-uFFE5+$“);

21、 264. return pattern.matcher(str).matches(); 265. 266. 267. /* 268. * 是否为空白 ,包括 null 和“ 269. * 270. * param str 271. * return 272. */ 273. public static boolean isBlank(String str) 274. return str = null | str.trim().length() = 0; 275. 276. /* 277. * 判断是否为质数 278. * 279. * param x 280. * return 281.

22、*/ 282. public static boolean isPrime(int x) 283. if (x 0 390. if (idx = 0 / 段结束位置应该加上段名如万,亿 393. 394. 395. 396. if (prefix.length() 0) 397. prefix += 圆 ; / 如果整数部分存在,则有圆的字样 398. return prefix + suffix; / 返回正确表示 399. 400. /* 401. * 全角字符转半角字符 402. * 403. * param QJStr 404. * return String 405. */ 406.

23、 public static final String QJToBJChange(String QJStr) 407. 408. char chr = QJStr.toCharArray(); 409. String str = “; 410. for (int i = 0; i mLinkedSet = new LinkedHashSet(); 426. String strArray = str.split(“ “); 427. StringBuffer sb = new StringBuffer(); 428. 429. for (int i = 0; i :result.append(

24、“);break; 502. case :result.append(“);break; 503. case “);break; 504. case %:result.append(“);break; 505. case _:result.append(“);break; 506. case #:result.append(“);break; 507. case ?:result.append(“);break; 508. default:result.append(src.charAt(pos);break; 509. 510. 511. 512. return result.toStrin

25、g(); 513. 514. /反过滤特殊字符 515. public static String decoding(String src) 516. if (src=null) 517. return “; 518. String result=src; 519. result=result.replace(“, “).replace(“, “); 520. result=result.replace(“, “); 521. result=result.replace(“, “ 522. result=result.replace(“, “%“).replace(“ 523. result=

26、result.replace(“, “#“).replace(“ 524. return result; 525. 526. / toUtf8String 将文件名转成 GBK 后再附到 ContentDisposition 527. public static String toUtf8String(String s) 528. StringBuffer sb = new StringBuffer(); 529. for (int i = 0; i = 0 & c *.*? 594. 评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力595. 596. 匹配

27、首尾空白字符的正则表达式:s* s*$ 597. 评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式598. 599. 匹配 Email 地址的正则表达式:w+(-+.w+)*w+(-.w+)*.w+(-.w+)* 600. 评注:表单验证时很实用 601. 602. 匹配网址 URL 的正则表达式:a-zA-z+:/s* 603. 评注:网上流传的版本功能很有限,上面这个基本可以满足需求 604. 605. 匹配帐号是否合法(字母开头,允许 5-16 字节,允许字母数字下划线):a-zA-Za-zA-Z0-9_4,15$ 606. 评注:表单验证时很实用

28、607. 608. 匹配国内电话号码:d3-d8 d4-d7 609. 评注:匹配形式如 0511-4405222 或 021-87888822 610. 611. 匹配腾讯 QQ 号:1-9 0-94, 612. 评注:腾讯 QQ 号从 10000 开始 613. 614. 匹配中国邮政编码:1 -9d5(?!d) 615. 评注:中国邮政编码为 6 位数字 616. 617. 匹配身份证:d15 d18 618. 评注:中国的身份证为 15 位或 18 位 619. 620. 匹配 ip 地址: d+.d+.d+.d+ 621. 评注:提取 ip 地址时有用 622. 623. 匹配特定数

29、字: 624. 1-9d*$ /匹配正整数 625. -1-9d*$ /匹配负整数 626. -?1-9d*$ /匹配整数 627. 1-9d* 0$ /匹配非负整数(正整数 + 0) 628. -1-9d* 0$ /匹配非正整数(负整数 + 0) 629. 1-9d*.d* 0.d*1-9d*$ /匹配正浮点数 630. -(1-9d*.d* 0.d*1-9d*)$ /匹配负浮点数 631. -?(1-9d*.d* 0.d*1-9d* 0?.0+ 0)$ /匹配浮点数 632. 1-9d*.d* 0.d*1-9d* 0?.0+ 0$ /匹配非负浮点数(正浮点数 + 0)633. (-(1-9

30、d*.d* 0.d*1-9d*) 0?.0+ 0$ /匹配非正浮点数(负浮点数+ 0) 634. 评注:处理大量数据时有用,具体应用时注意修正 635. 636. 匹配特定字符串: 637. A-Za-z+$ / 匹配由 26 个英文字母组成的字符串 638. A-Z+$ / 匹配由 26 个英文字母的大写组成的字符串 639. a-z+$ / 匹配由 26 个英文字母的小写组成的字符串 640. A-Za-z0-9+$ / 匹配由数字和 26 个英文字母组成的字符串 641. w+$ / 匹配由数字、26 个英文字母或者下划线组成的字符串 642. 评注:最基本也是最常用的一些表达式 643

31、. 644. String.split()方法中,有时需要特殊字符,见下: 645. /* 646. * 点的转义: . = u002E 647. 美元符号的转义:$ = u0024 648. 乘方符号的转义: = u005E 649. 左大括号的转义: = u007B 650. 左方括号的转义: = u005B 651. 左圆括号的转义:( = u0028 652. 竖线的转义:| = u007C 653. 右圆括号的转义:) = u0029 654. 星号的转义:* = u002A 655. 加号的转义:+ = u002B 656. 问号的转义:? = u003F 657. 反斜杠的转义: = u005C 658. 竖线 : | =u007C 659. * */

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报