java运行环境总结

1、main参数的args 数组接受外界的输入:例如:Java Test xue xi "Java spring";如果参数本身包含空格用""括起来。

2、String str = "java"+"struts"+"spring";会生成额外的javastruts和strutsspring额外的两个字符串变量;这个共在内存生成6个变量。

3、string so="hello"; 存储在常量池中;

4、Stringbuffer是线程安全的;StingBuilder是非线程安全的

5、StringBuffer.setLength(5);改变长度只保留前面的为5的部分。

9、当两个Random对象种子相同时,它们会产生相同的数值序列。

10、double和float类型进行计算时由于浮点数容易引起精度丢失,解决办法:采用BigDecimal的String的构造器f1=BigDecimal("0.1")和f2=BigDecimal.valueOf(0.01);加法f1.add(f2);用BigDecimal(0.1)还会引起精度丢失。

11、Calendar类月份最大值为11;add当被修改的字段超过它允许的范围时会发生进位,下一级字段也会变化会修正到变化的最小值;roll规则不会进行进位变化;set方法具有延迟修改性,直到下次调用get()、getTime()、getTimeInMillis()、add()、roll()时才会重新计算。

12、正则表达式:默认采用贪婪模式,会一直匹配下去;勉强模式用?后缀表示,它只会匹配最少的字符;占有模式用+后缀表示:例如匹配邮箱:“ \\w{3,20}@\\w+\\.(com|org|cn|net|gov)”

13、String[] mails={"kongyeeku163.com","kongyeeku@gmail.com","ligang@crazyit.org","wawa@abc.xx"};

Pattern mailPattern=Pattern.compile(“ \\w{3,20}@\\w+\\.(com|org|cn|net|gov)”); \\是不可变类,可供多个线程使用

Matcher matcher=null;

for(String mail:mails)

{ if(matcher==null)

   {matcher =mailPattern.matcher(mail);// 产生Matcher对象

  else

     {matcher.reset(mail);}//将现有的Matcher对象应用于新的字符序列,不是新的产生  注意

   if(matcher.matchs()){

       System.out.println(mail+“是一个有效的邮件地址”);}

   else{

        System.out.println(mail+“不是一个有效的邮件地址”);}

  }

 14、java程序国际化主要通过如下的三个类完成,java。util.ResourBundle加载一个国家的语言资源包;java.util.Local用于封装一个特定国家的语言环境;java.text.MessageFormat格式化带占位的字符串;  

 

   

 

      

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值