JAVA 一句话技巧
1.拆分字符串 遇到特殊字符,比如:对‘$’符号,就应该使用‘\\$’,后总结可以加个方括号如 "[.]"。
2.遍历HASHMAP Iterator itr = map.keySet().itrator(); while(itr.hasNext()) { Object temp1 = itr.next(); Object temp2 = tab.get(temp1); }
3.日历操作 Calendar c = Canlendar.getInstance(); c.get(c.YEAR);//获取年份,其他同理 c.add(c.MONTH,-1);//上个月的日期 4.随机数 Random random = new Random(); int ran = random.nextInt(100); 注意:范围[0,100)
5.读取配置文件 对于ini 文件或者 properties文件,其实只要内容是 ds=dfjh或者 kd: ksadkf这种,就可以用 Properties pro = new Properties(); //pro.load (Main.class.getResourceAsStream("/test.properties"));或者 //pro.load (new FileInputStream ("test.properties")); pro.getProperty ("test")
6.遍历vector 两种方式: // for (Enumeration e = v.elements
();e.hasMoreElements ();) // { // System.out.println (e.nextElement ().toString ()); // } Iterator item = v.iterator (); while(item.hasNext ()) { System.out.println (item.next ().toString ()); }
7.JAVA在WINDOWS下调用其他程序 try { Process p = Runtime.getRuntime().exec("mspaint"); p.waitFor(); }catch ...
8.获取键盘输入 BufferedReader input = new BufferedReader(new InputStream(System.in)); String s = input.readLine();
9.子类无参构造会隐式super(),若父类没有声明无参构造函数,而且有含参数构造函数,程序编译不通过。
10.命令提示符下,编译java文件 建议使用"javac -d . xxx.java" 能自动生成程序中的包。而运行只需要"java packname.mainclass".
11.使用 "pack200 x.gz y.jar"则将jar文件压缩成gz文件,对class文件压缩率极高,解压缩使用"unpack200 x.gz y.jar".
12.代码中'@'标记符号使用,例如@ Override 在方法前面,表示此方法是覆盖父类方法,那么在编译时会自动检查父类中是否有该方法。
13.周期性事件: private java.util.Timer timer; timer.schedule(new java.util.TimerTask() { public void run() { //……要做的事 } },0,5*60*1000); timer本身是多线程同步的,不需要自己启动线程。
14.介绍下JDK5.0 新特性
1.枚举类型: public class EnumDemo { enum MyColors { red, black, blue, green, yellow }; public static void main(String args[]) { MyColors color = MyColors.red; //for 也是JDK 5中新特性 for(MyColors option : color.values()) { System.out.println(option); } switch(color) { case red: System.out.println("best color is "+color.red); break; default: System.out.println("What"); break; } } } 几点注意:1. enum不能写成局部变量。 2. switch()参数为枚举常量。 3. case 后red实际是 color.red(由于其机制强制省略color)而其他地方是不能直接用red的.
15.正则表达式:(检验邮箱) String check = "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$" ; Pattern regex = Pattern.compile (check) ; Matcher matcher = regex.matcher (Emailname) ; boolean isMatched = matcher.matches () ;
16.序列化 ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
ObjectOutputStream out = new ObjectOutputStream(byteOut);
out.writeObject(combo); ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray()); ObjectInputStream in =new ObjectInputStream(byteIn); JComboBox comb2 = (JComboBox)in.readObject();
17.数据库操作 Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver"); Connection m_objConnection = DriverManager.getConnection (jdbc:odbc:smstransmitDB;uid=sa;pwd=leslie); /* Statement objStatement = m_objConnection.createStatement (ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); */ String m_objDelSql = "delete from " + m_objTable + " where " + m_objFldTagId + "=?"; PreparedStatement objStatement = m_objConnection.prepareStatement (m_objDelSql); objStatement.setInt (1, objSms.id); objStatement.execute (); /*executeQuery()返回ResultSet结果*/
18.JAVA 截取小数位数 float a = 1234.5678f; java.text.DecimalFormat df =new java.text.DecimalFormat("#.00");
String a=df.format(a); System.out.println(a); //1234.56
//写#的是有值就写值,没值就不写 //写0的是有值就写值,没值就写0
19.大小写互换
public static void main (String[] args) { Scanner sc = new Scanner (System.in); sc.useDelimiter ("\n"); String temp = sc.next (); chang_two(temp); sc.close (); }
//大小写 互换 public staic void chang_two (String text) { char tem [] = text.toCharArray (); for (int i = 0; i <tem.length;i++) { if(tem[i]>=97&&tem[i]<=122) { tem[i]=(char)(tem[i]-32);
}else if (tem[i]>=65&&tem[i]<=90) { tem[i]=(char)(tem[i]+32); } }
System.out.println(new String (tem)); } 20.java中格式化输出数字
在实际工作中,常常需要设定数字的输出格式,如以百分比的形式输出,或者设定小数位数等,现稍微总结如下。
主要使用的类:java.text.DecimalFormat 1。实例化对象,可以用如下两种方法: DecimalFormat df=(DecimalFormat)NumberFormat.getInstance(); DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance();
因为DecimalFormat继承自NumberFormat。 2。设定小数位数 系统默认小数位数为3,如:
DecimalFormat df=(DecimalFormat)NumberFormat.getInstance();
System.out.println(df.format(12.3456789)); 输出:12.346
现在可以通过如下方法把小数为设为两位: df.setMaximumFractionDigits(2);
System.out.println(df.format(12.3456789)); 则输出为:12.35
3。将数字转化为百分比输出,有如下两种方法: (1) df.applyPattern("##.##%");
System.out.println(df.format(12.3456789));
System.out.println(df.format(1)); System.out.println(df.format(0.015));
输出分别为:1234.57% 100% 1.5% (2) df.setMaximumFractionDigits(2);
System.out.println(df.format(12.3456789*100)+"%");
System.out.println(df.format(1*100)+"%");
System.out.println(df.format(0.015*100)+"%"); 输出分别为: 1,234.57% 100% 1.5% 4。设置分组大小 DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance(); df1.setGroupingSize(2);
System.out.println(df1.format(123456789)); 输出:1,23,45,67,89
还可以通过df1.setGroupingUsed(false);来禁用分组设置,如: DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance(); df1.setGroupingSize(2);
df1.setGroupingUsed(false); System.out.println(df1.format(123456789));
输出:123456789 5。设置小数为必须为2位 DecimalFormat df2=(DecimalFormat) DecimalFormat.getInstance(); df2.applyPattern("0.00");
System.out.println(df2.format(1.2)); 输出:1.20
21.遍历VECTOR
for(int i = 0; i<v.size ();i++) {
System.out.println (v.elementAt (i)); }
http://www.blogjava.net/JAVA-HE/archive/2007/02/07/98513.html
JAVA 一句话技巧的更多相关文章
- Java数组技巧攻略
Java数组技巧攻略 0. 声明一个数组(Declare an array) String[] aArray = new String[5]; String[] bArray = {" ...
- java新手抖机灵(java新手技巧)
java新手抖机灵(java新手技巧) 1.交换两个整数的值 好处是不用定义临时变量,显得代码简洁,提高运行效率 其实也可以用+-*/进行这种运算 比如可以这样: a = a + b; b = a - ...
- 偏执却管用的10条Java编程技巧
本文由 ImportNew - LynnShaw 翻译自 javacodegeeks.欢迎加入翻译小组.转载请见文末要求. 经过一段时间的编码(咦,我已经经历了将近20年的编程生涯,快乐的日子总是过得 ...
- 代码优化:Java编码技巧之高效代码50例
出处: Java编码技巧之高效代码50例 1.常量&变量 1.1.直接赋值常量值,禁止声明新对象 直接赋值常量值,只是创建了一个对象引用,而这个对象引用指向常量值. 反例: Long i = ...
- Java 小技巧和在Java避免NullPonintException的最佳方法(翻译)
前几天就g+里面看到有人引用这篇博文.看了一下.受益颇多. 所以翻译过来,希望和大家一起学习.本人英语水平有限,假设有错,请大家指正. 原文地址(须要翻墙):http://ja ...
- 30 个java编程技巧
1.return 一个空的集合,而不是 null 如果一个程序返回一个没有任何值的集合,请确保一个空集合返回,而不是空元素.这样你就不用去写一大堆 ”if else” 判断null元素. Java 的 ...
- 30 个java编程技巧(最佳实践的初学者)
1.return 一个空的集合,而不是 null 如果一个程序返回一个没有任何值的集合,请确保一个空集合返回,而不是空元素.这样你就不用去写一大堆 ”if else” 判断null元素. Java 的 ...
- Java基础学习总结(59)——30 个java编程技巧
1.return 一个空的集合,而不是 null 如果一个程序返回一个没有任何值的集合,请确保一个空集合返回,而不是空元素.这样你就不用去写一大堆 "if else" 判断null ...
- 10个调试Java的技巧
调试不仅可以查找到应用程序缺陷所在,还可以解决缺陷.对于Java程序员来说,他们不仅要学会如何在Eclipse里面开发像样的程序,更需要学会如何调试程序.本文介绍了Java程序员必知的10个调试技巧, ...
随机推荐
- Xamarin.android Activity动画切换效果实现
http://blog.csdn.net/esunshine1985/article/details/44302903 1.在Resources--values下新建styles.xml,添加内容如下 ...
- powerdesigner的使用
前言 做过建模和设计的人都知道,powerdesigner是个强大实用的工具:采用模型驱动方法,将业务与IT结合起来,可帮助部署有效的企业体系架构,并为研发生命周期管理提供强大的分析与设计技术.本文档 ...
- 笔记-NSArray 逆序reverseObjectEnumerator 及 NSEnumerator 遍历
//1.原始数组 NSMutableArray *array = [NSMutableArray arrayWithObjects:@"1",@"2",@&qu ...
- [js高手之路]原型式继承与寄生式继承
一.原型式继承本质其实就是个浅拷贝,以一个对象为模板复制出新的对象 function object( o ){ var G = function(){}; G.prototype = o; retur ...
- python之tuple
1.python元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. #创建元组 >>> tuple2 = 123,456,'hel ...
- 【有上下界的网络流】ZOJ2341 Reactor Cooling(有上下界可行流)
Description The terrorist group leaded by a well known international terrorist Ben Bladen is bulidi ...
- Windows环境下在Oracle VM VirtualBOX下克隆虚拟机镜像
1.定位到Vritualbox的安装目录 2.将安装好的.vdi文件复制一份到指定目录下 3.执行 VBoxManage internalcommands sethduuid F:\VirtualBo ...
- JavaScrip:Function函数编程
自定义函数定义 1.函数通过function关键字创建,函数创建格式: function 函数名称([参数,...]){ 代码段; return 返回值; } 注意事项: 函数名称不要包含特殊字符 函 ...
- vue的爬坑之路-------axios中this的指向问题
在自己的vue小项目中使用了axios这个插件,但是发现在axios请求数据成功之后的回调函数中this并不是指向当前vue实例, 在如下代码中 谷歌浏览器中报 this.goodsArr 未被定义 ...
- 将控制台信息显示在前台页面的js插件
在拿出插件之前,先回顾一下apply()的用法,这里和call()做比较. JavaScript中的每一个Function对象都有一个apply()方法和一个call()方法,它们的语法分别为: /* ...