同福

编程入门第X课,数组与集合(array,map)

介绍

介绍


遍历循环foreach

遍历循环比较复杂一些,就是说针对遍历对象的属性进行逐一选择,遍历对象有多少属性就会循环多少次

foreach循环语法在c/c++里是不存在的,只有伪语言java、php才会有这种高级语法,java和php的遍历语法也有不同,我们分开介绍

java遍历对象示例

这个比较复杂,利用了java的反射(reflect)技术

import java.io.IOException;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
class TFObject{
    private Integer id;
    private String name;
    public Integer getId(){
        return id;
    }
    public void setId(Integer id){
        this.id = id;
    }
    public String getName(){
        return name;
    }
    public void setName(String name){
        this.name = name;
    }
}
public class TFJavaDemo{
    public static void main(String[] args){
        TFObject tfObject = new TFObject();
        Object object;
        Field[] fields;
        tfObject.setId(123);
        tfObject.setName("福哥");
        try{
            object = (Object) tfObject;
            fields = object.getClass().getDeclaredFields();
            for (Field field : fields) {
                String name = field.getName();
                String type = field.getGenericType().toString();
                Method method = object.getClass().getMethod("get" + name.substring(0, 1).toUpperCase() + name.substring(1));
                String value = String.valueOf(method.invoke(object));
                System.out.println("(" + field.getGenericType().toString() + ") " + field.getName() + " = " + value + ";");
            }
        }
        catch (Exception e){
            e.printStackTrace();
        }
    }
}

4a2b061cdab397f8.jpg

java遍历数组示例

这个比较简单

public class TFJavaDemo{
    public static void main(String[] args){
        String[] keywords = new String[]{"福哥", "喜欢", "编程"};
        for(String keyword : keywords){
            System.out.println(keyword);
        }
    }
}

154e5815b08449e7.jpg

php遍历示例

php遍历对象和数组都是一个语法,这个倚仗的是php这种弱类型的语言,好像变魔法一般的语法很BT

public class TFJavaDemo{
    public static void main(String[] args){
        String[] keywords = new String[]{"福哥", "喜欢", "编程"};
        for(String keyword : keywords){
            System.out.println(keyword);
        }
    }
}

785297d72a4f356b.jpg

总结

编程里面的循环语句可以帮助我们实现比较复杂的业务逻辑,计算机设计初衷之一就是解决“重复劳动”,所以编程的循环语句我们一定要用熟练了才行