增强for循环
/* *增强for循环 * for(元素类型 变量:数据或Collection集合){ * 使用变量即可,该变量就是元素 * } * 优点:简化了数组和集合的遍历 * 缺点:增强for的目标不能为null * 解决方法:对for的目标先进行不是null的判断,然后再使用 */import java.util.ArrayList;import java.util.List;public class ForDemo{ public static void main(String[] args){ int[] arr = {1,2,3,4,5}; for(int i=0;iarray = new ArrayList (); array.add("hadoop"); array.add("spark"); array.add("storm"); for(String s : array){ System.out.println(s); } List list = null; //lang.NullPointerException //s是从list里获取的,获取前需判断 //其实就是迭代器的功能 if(list !=null){ for(String s : list){ System.out.println(s); } } }}----------------------------------------------------输出结果1234512345wujiadonghadoopsparkstorm------------------------------------------------------
用ArrayList存储字符串,要求加入泛型,并用增强for遍历
import java.util.ArrayList;import java.util.Iterator;public class ArrayListDemo{ public static void main(String[] args){ ArrayListarray = new ArrayList (); array.add("java"); array.add("python"); array.add("scala"); //遍历集合 //迭代器 Iterator it = array.iterator(); while(it.hasNext()){ String s = it.next(); System.out.println(s); } System.out.println("----------------------"); for(int i =0;i
用ArrayList存储自定义对象,要求加入泛型,并用增强for遍历
import java.util.ArrayList;import java.util.Iterator;public class ArrayListDemo1{ public static void main(String[] args){ ArrayListarray = new ArrayList (); Student s1 = new Student("wu",22); Student s2 = new Student("jia",23); Student s3 = new Student("dong",24); array.add(s1); array.add(s2); array.add(s3); //迭代器遍历 Iterator it = array.iterator(); while(it.hasNext()){ Student s = it.next(); System.out.println(s.getName()+"---"+s.getAge()); } //for循环遍历 for(int i=0;i
静态导入
/* *静态导入 *格式:import static 包名...类名.方法名 *静态导入注意事项 *方法必须是静态的;多个相同方法时需加前缀进行调用 */import static java.lang.Math.abs;import static java.lang.Math.pow;import static java.lang.Math.max;public class StaticImportDemo{ public static void main(String[] args){ System.out.println(abs(-100)); System.out.println(pow(2,3)); System.out.println(max(20,30)); }}----------------------------------------------输出结果1008.030---------------------------------------------
可变参数
public class ArgsDemo{ public static void main(String[] args){ int a=10; int b=10; int result = sum(a,b); System.out.println("result:"+result); int c = 10; result = sum(a,b,c); System.out.println("result:"+result); } public static int sum(int... a){ //其实a是一个数组 int s = 0; for(int i:a){ s +=i; } return s; }}----------------------------------------------------输出结果result:20result:30---------------------------------------------
Arrays工具类的asList()方法
/* *public staticList asList(T... a):把数组转成集合 *但是集合的长度不能改变,原因是这个集合的本质是数组 * */import java.util.Arrays;import java.util.List;public class ArraysDemo{ public static void main(String[] args){ List list = Arrays.asList("java","python","scala");//这里元素可变 for(String s:list){ System.out.println(s); } }}---------------------------输出结果javapythonscala----------------------------------------
获取10个1-20之间的随机数,要求不能重复
获取10个1-20之间的随机数,要求不能重复/* *获取10个1-20之间的随机数,要求不能重复 * * * */import java.util.Random;import java.util.ArrayList;public class RandomDemo{ public static void main(String[] args){ //创建产生随机数的对象 Random r = new Random(); //创建存储随机数的集合 ArrayListarray = new ArrayList (); //int number = r.nextInt(20);生成0-20之间的随机数 int count = 0; // array.add(number); while(count<10){ //先产生一个随机数 int number = r.nextInt(20)+1; if(!array.contains(number)){ array.add(number); count++;//如果这个变量递增放在if外面会怎么样 } } for(Integer s:array){ System.out.println(s); } }}