之前网络不是很好用,就只能在word里写了,时间是不能浪费的,每天都进步一点点,时间长了才能进步一大步!加油!
API:Application Programming Interface应用程序接口
String类对象中的内容一旦被初始化就不能在改变了。
StringBuffer类用于封装内容可以改变的字符串
用toString方法可以转换为String类型
字符串常量实际上是一种特殊的匿名String对象
String s1=new String(“h”);
String s2=new String(“h”);是两个不同的对象
String s1=”h”; String s2=”h”;s1==s2;是两个相同的对象;
String类常用成员方法:
构造方法:String(byte[]bytes,int offset,int length)
equalsIgnoreCase()忽略大小写比较两个对象是否相等
indexOf(int ch)返回字符在字符串中的位置,没有的话返回-1;
substring(int beginIndex,int endIndex)截取从beginIndex到endIndex-1字符串
基本数据类型不具有对象性,有一定的局限性
集合类:集合类用于存储一组对象,其中的每个对象称之为元素
经常会用到的有Vector,Enumeration,ArrayList,Collection,Iterator,Set,List等集合类和接口。
Vector类和Enumeration接口:都在java.util包中
如果要将若干对象保存在一种数据结构中,但是预先不能确定数据的数目时用Vector;
创建Vector对象Vector ct=new Vector();
Enumeration接口中有一个nextElement()方法,它返回的结果是Object的,可以逐一读取元素,在调用此方法前,先调用hasMoreElements方法如果指向元素,返回true,如果没有元素,返回false;
Collection 接口与Iterator接口
ArrayList是实现了Collection接口的类
Iterator是通过调用iterator()方法获得对象
Iterator中的hasnext()方法与hasMoreElement()对应,他的next方法用于获得每一个元素;
ArrayList:方法是不同步的,如果程序中不存在线程安全问题,那么用ArrayList将效率比较高些;
Vector方法是线程同步的,安全的,运行效率会降低
Collection各元素对象之间没有指定的顺序,允许有重复元素和多个null元素对象;
没法实现排序;
Set各元素对象之间没有指定的顺序,不允许有重复元素和最多一个null元素对象;
List各元素对象之间有指定的顺序,允许有重复元素和多个null元素对象;
Hashtable不仅可以像Vector一样动态存储一系列的对象,而且对存储的每一个对象都要安排另一个对象与之相关联;
用作关键字的类必须覆盖Object.hashCode方法和Object.equals方法;
Properties类是Hashtable的子类增加了将Hashtable对象中的关键字和值保存导文件和从文件中读取关键字和值到Hashtable对象中的方法
如果要用Properties.store方法存储Properties对象中的内容,每个属性的关键字和值都必须是String类型;
//程序启动,记下启动次数,并记录在某个文件中,每次启动都打印次数;
创建Properties对象,从we年间中读取属性(关键字和值)装载,load(FileInputStream(“count.txt”)):接受文件对象,load方法从文件对象中装载,关联具体文件,运行次数:getProperty(“count”)方法;
Int c=Integer.ParseInt(settings.getProperty())
获取某个文件的属性值:用load方法从文件中装载,获取属性值并打印;
存入 properties后再取出,打印处Jvm的所有属性:Properties sp=System.properties();
通过Enumeration抽象获取:
While(sp.hasMoreElements()){
String str=(String)sp.nextElements();
}
System与Runtime类:
不能用new关键字去获取对象:Runtime类
Calendar类在JDK中,与日期和时间有关的类:
Calendar类用来运算增加日期之后时间;
抽象基类用Calendar.getInstance静态方法获得对象;
算出距今315天之后的时间利用格式:,,年,,月,,日输出:
创建Calendar对象:Calendar c=Calendar.getInstance();
System.out.println(c.get(Calendar.YEAR)+“年”+c.get(calendar.
MONTH)+“月”+c.get(calendar.DAY)+”日”);c.add(Calendar.DAY_OF_YEAR);
Date类:DateFormat类是抽象类,,利用子类SimpleDateFormat类完成具体的对象事件;
Timer类:TimerTask类实现了Runnable接口,执行的任务有里面实现的run方法来完成;
利用匿名对象相当于定义一个TimerTask子类只是没有名字、重写run方法,利用前面所学的Runtime类实现结束任务线程的代码Timer.cancel();使用new Timer对象运用了Daemon线程,所以不用去掉true,计算器启动后立即结束任务线程TimerTask类cancel()在30秒前调用此方法会取消任务:this.TimerTask第一次执行完了会取消,后来的任务不能取消线程;
Math类中的方法都为Static静态的类型:如Random类