格式:for(数据类型 变量名:被遍历的集合或者数组){ }
1:
2: ArrayList<String> al=new ArrayList<String>();
3: al.add("abc1");
4: al.add("abc2");
5: al.add("abc3");
6:
7: //相当于Iterator的作用,将集合中的元素遍历,只能够获取元素而不能对集合进行操作
8: //Iterator除了遍历以外,还可以remove集合中的元素
9: for(String s:al)
10: {
11: System.out.println(s);
12: }
1:
2: /*
3: 高级for循环有局限性,必须要有遍历的对象,对于Map集合,不可以直接使用迭代器,因此也就不可以直接使用高级for
4: */
5:
6: HashMap<Integer,String> hm=new HashMap<Integer,String>();
7: hm.put(1,"a");
8: hm.put(2,"b");
9: hm.put(3,"c");
10:
11: //keySet的高级for
12: Set<Integer> keySet=hm.keySet();
13: for(Integer i:keySet)
14: {
15: System.out.println(i+"..."+hm.get(i));
16: }
17:
18: //entrySet的高级for
19: for(Map.Entry<Integer,String> me:hm.entrySet())
20: {
21: System.out.println(me.getKey()+me.getValue());
22: }
23:
1: class Demo
2: {
3: public static void main(String[] args)
4: {
5: show(2,3,4,5,6);
6: show(2,3,4,5,6,1,35,0);
7: //如果使用传统方法,需要每次都定义一个数组,作为实际参数
8: //如果使用可变参数,则不需要定义
9: }
10:
11: public static void show(int...arr)
12: {
13: for(int a:arr)
14: {
15: System.out.print(a);
16: }
17:
18: System.out.println();
19: }
20: }
21:
22: /*
23: 注意:使用可变参数时,一定要定义在参数列表的最后面。
24: */
1:
2: public static void main(String[] args)
3: {
4: int[] arr={3,1,5};
5: //使用工具类时需要类名,多次使用就要多次写类名,重复
6: Arrays.sort(arr);
7: int index=Arrays.binarySearch(arr,1);
8:
9: System.out.println(Arrays.toString(arr));
10: System.out.println("index="+index);
11: }
12:
1:
2: //为了避免重复,可以将Arrays工具类静态导入。
3: //导入的是Arrays类中的所有的静态方法
4: import static java.util.Arrays.*;
5:
6: public static void main(String[] args)
7: {
8: int[] arr={3,1,4};
9: sort(arr);
10: int index=binarySearch(arr,1);
11:
12: //此处的Arrays不可省略,因为本身所有的类均继承于Object,Object类中也有toString方法
13: //如果省略掉类名,则默认使用Object类中的toString方法
14: System.out.println(Arrays.toString(arr));
15: System.out.println("index="+index);
16: }
System描述系统的一些信息。
获取系统的属性信息:getProperties( )方法,返回值为Properties(属性类);
1:
2: public static void main(String[] args)
3: {
4: Properties prop=System.getProperties();
5: //因为Properties是HashSet的一个子类,也就是Map集合的一个子类,因此可以通过操作Map的方法来取出该集合中的元素
6: for(Object obj:prop.keySet())
7: {
8: //该集合中存储的都是字符串,没有定义泛型,要进行类型转换
9: String value=(String)prop.get(obj);
10: System.out.println(obj+"..."+value);
11: }
12:
13: }
1:
2: //如何在系统中自定义一些特有信息?
3: System.setProperty("mykey","myvalue");
4:
5: //如何获取单个属性信息?
6: System.getProperty("mykey");
该类中并没有提供构造函数,说明不可以直接new对象,那么会提供一个静态方法来获取本类对象,返回值为本类类型。
该方法为:static Runtime getRuntime( );单例设计模式
1:
2: public static void main(String[] args)throws Exception
3: {
4: Runtime r=Runtime.getRuntime();
5: //执行扫雷程序
6: r.exec("winmine.exe");
7:
8: }
1: import java.util.*;
2: import java.text.*;
3:
4:
5: class DateDemo
6: {
7: public static void main(String[] args)
8: {
9: Date d=new Date();
10: System.out.println(d);
11:
12: //将模式封装到SimpleDateFormat对象中,调用format方法,将模式格式化给定的Date对象
13: SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日");
14: sdf.format(d);
15: }
16: }
17:
18: /*
19: String time=sdf.format(d);
20: System.out.println("time="+time);
21: */
22:
1:
2: //如何单独获取年份,月份或者日期?
3: //方法1:
4: Date d=new Date();
5: SimpleDateFormat sdf=new SimpleDateFormat("yyyy");
6: String year=sdf.format(d);
7: System.out.println(year);
8:
9: //方法2:
10: Calendar c=Calendar.getInstance();
11: System.out.println(c.get(Calendar.YEAR));
12:
13: /*
14: Calendar为一个抽象类,提供了一个类方法getInstance来获取该类的一个通用的对象
15: getInstance方法的返回值为一个Calendar对象。
16:
17: */
<1>ceil方法,返回最接近指定数据且大于指定数据的值,返回值为整数。
1: double d=Math.ceil(16,34);
2: System.out.println("d="+d);
打印结果为d=17.0
<2>floor方法,返回小于该数的最大整数
1: double d=Math.floor(12.34);
2: System.out.println("d="+d);
3:
打印结果为d=12.0
<3>round方法,四舍五入
1: long l=Math.round(12.54);
2: System.out.println("l="+l);
3: //返回值为long类型
<4>pow方法,返回值为a的b次方,pow(a,b)
1: double d2=Math.pow(2,3);
2: System.out.println(d2);
3:
打印结果为8.0
<5>random随机数,介于0.0到1.0之间的随机数,double类型
在java.util中有一个Random类
netInt(int n);返回一个0到n之间的随机数(int类型)
1: //返回1~10之间的随机数
2: int d=(int)(Math.random()*10+1);
3:
4: //方法2:
5: Random r=new Random();
6: int d=r.nextInt(10)+1;
黑马程序员---部分JDK1.5新特性,一些类(高级for,可变参数,静态导入,System,Runtime,Date,Math)
原文:http://www.cnblogs.com/mandy920213/p/3537501.html