`

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));
}

分享到:
评论

相关推荐

    张孝祥Java面试技巧

    Java面试技巧

    提取关键词(Java版)

    Java编写的提取一篇文章中的关键词的程序,使用TF-IDF算法提取文章中的关键词,使用Java原生sdk实现,可以运行。

    JAVA_API1.6文档(中文)

    java.awt.dnd Drag 和 Drop 是一种直接操作动作,在许多图形用户界面系统中都会遇到它,它提供了一种机制,能够在两个与 GUI 中显示元素逻辑相关的实体之间传输信息。 java.awt.event 提供处理由 AWT 组件所激发的...

    Java程序设计技巧1001例

    Java语言1001例 请用超星阅读器打开这些文件

    java源码包---java 源码 大量 实例

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,...

    Java 中文入门学习手册合集[chm版]

    第一章 Java语言的产生及其特点 第二章 Java程序开发与运行环境 第三章 Java程序设计基础 第四章 Java应用程序的基本框架 第五章 Java的类 第六章 Java图形用户接口 第七章 多线程 第八章 Java的"异常" 第九...

    java jdk 8 帮助文档 中文 文档 chm 谷歌翻译

    JDK1.8 API 中文谷歌翻译版 java帮助文档 JDK API java 帮助文档 谷歌翻译 JDK1.8 API 中文 谷歌翻译版 java帮助文档 Java最新帮助文档 本帮助文档是使用谷歌翻译,非人工翻译。准确性不能保证,请与英文版配合使用 ...

    ElasticSearch Java API 中文文档

    ElasticSearch Java API 中文文档 ElasticSearch Java API 中文文档

    JAVA上百实例源码以及开源项目

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,...

    java源码包2

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历...

    java源码包4

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历...

    java源码包3

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历...

    Java API文档 中文网页版

    Java API文档中文版,欢迎下载!!

    Java 面经手册·小傅哥.pdf

    这是一本以面试题为入口讲解 Java 核心内容的技术书籍,书中内容极力的向你证实代码是对数学逻辑的具体实现。当你仔细阅读书籍时,会发现Java中有大量的数学知识,包括:扰动函数、负载因子、拉链寻址、开放寻址、...

    java中文排序,数字字母汉字排序

    java实现中文排序,按数字字母汉字的顺序进行排序

    Java范例大全 源码

    这是一本关于Java开发的大百科全书,以知识点为脉络,以实例(200多个实例贯穿全书)为主要内容,深入阐述了Java开发的各种方法和技巧,权威性毋庸置疑。首先,全书以Java开发环境搭建开篇,循序渐进地介绍了Java语法...

    JAVA将一个数据中数据定时自动复制(抽取)到另一个数据库

    用java中的线程控制程序从一个数据库中定时自动抽取数据到另一个数据库,实现数据库的同步。代码很详细。

    JAVA API官方中文版手册chm文件文档

    JAVA API官方文档中文版软件包 java.applet java.awt java.awt.color java.awt.datatransfer java.awt.dnd java.awt.event java.awt.font java.awt.geom java.awt.im java.awt.im.spi java.awt.image ...

    Java线程高清晰中文第二版

    Java的线程工具易于使用,并且像Java中的其他东西一样可以在不同的平台之间移植。这是一件好事,因为如果没有线程,那么除了最简单的applet之外,几乎不可能编写出任何程序。如果你想使用Java,就必须学习线程。

Global site tag (gtag.js) - Google Analytics