与运行环境交互总结

1. 你能够使用Scanner或者BufferedReader读取键盘输入的内容吗?

2. Runtime来启用一个进程(原理已经总结到了小功能里面去了)

关键代码:

Process p=Runtime.getRuntime().exec("notepad.exe RuntimeTest.java");

p.destroy()

3.关于clone, 只是浅克隆,对引用的对象不会克隆!!!!!!

/*
 * 只是浅克隆,给引用的对象不会克隆!!!!!!
 */
public class ObjectTest {
	public static void main(String[] args) throws Exception{
		Address address = new Address("山里洞人");
		User user=  new User(address);
        System.out.println(user.age);   //是打印出15
        User user2 = user.clone();
        System.out.println(user==user2);  //false
        System.out.println(user.address==user2.address);  //比较的是引用的地址是否相同 true
	}
}
class Address{
	private String detial;
	public Address(String detail){
		this.detial = detail;
	}
}
class User implements Cloneable{
	public Address address;
	public int age = 5;
	public User(Address address){
		age = 15;
		this.address = address;
	}
	public User clone() throws CloneNotSupportedException{
       return (User)super.clone();  		
	}
}


4. Objects的类的用法:

/*
 * Objects.toString(object),这个object对象为空的时候,不会报异常,会打印为空
 * Objects.requireNonNull(object)用来测试这个对象是否为空
 */
import java.util.Objects;
public class ObjectsTest {
    static Object object;  //在加载这个类之前调用
	public static void main(String[] args) {
	    System.out.println(Objects.hashCode(object));
	    System.out.println(Objects.toString(object));
	    System.out.println(Objects.requireNonNull(object));
	}
}


5. ******************* StringBuffer和String和StringBuilder的区别?**************************************************

String是不可变的字符序列

StringBuffer是可变的字符序列,并且线程是安全的

StringBuilder是可变的字符序列,线程不安全,但是性能要高一些。

 

6. 为了防止float和double的运算,从而导致数据的丢失。可以使用BigDecimal!!!!!!!!!!!!!!!!!!我已经封装在小功能里面了。

    System.out.println(0.05+0.01);  //0.060000000000000005 这样是不对的。

 

7.*************************  非常重要的东西  RegExp ******************************************************************
   find()方法是找匹配的子串从前到后找完使用wile循环慢慢的找。

   group()返回匹配的子串。

   还要注意: matches和lookingAt方法的区别!!!!!!!!!!!!!!!!

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegExpTest {
	public static void main(String[] args) {
	  String str ="i like java";
	  Matcher matcher = Pattern.compile("\\w+").matcher(str);
	  while(matcher.find()){
		  System.out.println(matcher.group());
		  //i
		  //like
		  //java
	  }
	 String s = str.replaceFirst("li\\w+", "哥笑了");
	 System.out.println(s);
	}
}

8. 关于国际滑中 SimpleDateFormate这个类对日期的处理。

String str="2009-6-1 15:14:12"; 

SimpleDateFormat sim=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
Date d=sim.parse(str); 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值