Utilities:(工具类)//方法都是静态的,对外没有构造函数,是不需要创建对象的,因为他的方法中并未封装特有数据,都是共享的情况下,定义静态最方便
如果数组中的元素都是对象,那么变成集合时,数组中的元素就直接转成集合中的元素
高级for循环
格式:
for(数据类型 变量名:被遍历的集合(Collection)或者数组){
}
对集合进行遍历。只能获取元素,但是不能对集合进行操作
迭代器除了遍历,还可以进行remove集合中元素的动作
如果是用ListIterator,还可以在遍历过程中对集合进行增删该查的动作
|---可变参数
其实就是数组参数的简写形式,不用每一次都手动的建立数组对象,只要将要操作的元素作为参数传递即可,隐式将这些参数封装成了数组
public static void show(int... arr)
静态方法在调用时,使用的方式为类名.调用,
当类名重名时,需要指定具体的包名。
当方法重名时,指定具备所属的对象或者类。
1.System:
System类中的方法和属性都是静态的
out:标准输出,默认是控制台。
int:标准输入,默认是键盘
arraycopy(Object src,int srcPos,Object dest,intdestPos,int length)
clearProperty(String key)
currentTimeMills()
exit()
gc()//运行垃圾回收器
getProperties()//确定当前的系统属性
System.setProperty("myKey","myValue")//在系统中自定义一些特有信息
System.getProperty("os.name");
java -D<name>=<value>// set a system property
2.Runtime:
每个java应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接。
该类并没有提供构造函数,说明该类不能被实例化,但是提供了一个静态的方法获取本类对象-getRuntime(),该类使用了单例设计模式
process exec(String command)
process.destory()
3.Date:
SimpleDataFormat(String pattern){"yyyy年MM月dd日 E hh:mm:ss"}
c.get(Calendar.YEAR);//俩个方法
由于中英习惯不同,在使用月份和星期时,可以使用字符串索引(查表法)的方式显示
c.set(2012,2,23);//设置年月日,但是注意,月份的对应是0到11对应一到十二月
c.add(int field,int amount)//根据日历的规则,为给定的日历字段添加或减去指定的时间量
4.Math:
static double E 自然对数
static double PI 圆周率
abs() 绝对值
double ceil(double d) 返回大于指定数据的最小整数
double floor(double d) 返回小于指定数据的最大整数
long round(double a) 四舍五入
pow(double a,double b) a-底数,b-指数,返回a的b次幂
Math.Random()*10+1 //随机数
Random.nextInt(10) //随机数
|--Collections //专用于对集合操作的工具类
Collections.sort(list);
Collections.sort(list,new Comparator)
Collections.max(list)
Collections.max(list,new Comparator)
Collections.binarySerach(list," ")
Collections.fill(list," ")//将集合中的元素全部替换
Collections.replaceAll(list,"aaa","pp")
Collections.reverse(list)
Collections.reverseOrder();
Collections.shuffle(list)
|--Arrays:用于操作数组的工具类
如果数组中的元素都是对象,那么变成集合时,数组中的元素就直接转成集合中的元素
如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在
toString(arr);
高级for循环
格式:
for(数据类型 变量名:被遍历的集合(Collection)或者数组){
}
对集合进行遍历。只能获取元素,但是不能对集合进行操作
迭代器除了遍历,还可以进行remove集合中元素的动作
如果是用ListIterator,还可以在遍历过程中对集合进行增删该查的动作
传统for和高级for有什么区别呢?
高级for有一个局限性。必须有被遍历的目标。建议在遍历数组的时候,还是希望使用传统for。因为传统for可以定义角标
|---可变参数
其实就是数组参数的简写形式,不用每一次都手动的建立数组对象,只要将要操作的元素作为参数传递即可,隐式将这些参数封装成了数组
public static void show(int... arr)
方法的可变参数,在使用时注意,可变参数一定要定义在参数列表的最后边
静态方法在调用时,使用的方式为类名.调用,
当类名重名时,需要指定具体的包名。
当方法重名时,指定具备所属的对象或者类。
1.System:
System类中的方法和属性都是静态的
out:标准输出,默认是控制台。
int:标准输入,默认是键盘
arraycopy(Object src,int srcPos,Object dest,intdestPos,int length)
clearProperty(String key)
currentTimeMills()
exit()
gc()//运行垃圾回收器
getProperties()//确定当前的系统属性
System.setProperty("myKey","myValue")//在系统中自定义一些特有信息
System.getProperty("os.name");
java -D<name>=<value>// set a system property
2.Runtime:
每个java应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接。
该类并没有提供构造函数,说明该类不能被实例化,但是提供了一个静态的方法获取本类对象-getRuntime(),该类使用了单例设计模式
process exec(String command)
process.destory()
3.Date:
SimpleDataFormat(String pattern){"yyyy年MM月dd日 E hh:mm:ss"}
c.get(Calendar.YEAR);//俩个方法
由于中英习惯不同,在使用月份和星期时,可以使用字符串索引(查表法)的方式显示
c.set(2012,2,23);//设置年月日,但是注意,月份的对应是0到11对应一到十二月
c.add(int field,int amount)//根据日历的规则,为给定的日历字段添加或减去指定的时间量
4.Math:
static double E 自然对数
static double PI 圆周率
abs() 绝对值
double ceil(double d) 返回大于指定数据的最小整数
double floor(double d) 返回小于指定数据的最大整数
long round(double a) 四舍五入
pow(double a,double b) a-底数,b-指数,返回a的b次幂
Math.Random()*10+1 //随机数
Random.nextInt(10) //随机数