Java数据结构技巧

Java数据结构技巧

1、循环

for-each循环如果不是"[]"的数组类型,则需要提前判断数据结构是否为空,否则有可能会有空指针异常。

2、对于List对象的i到j位进行排序

for(List<String> now_result:result)
            {
                List<String> sublist = now_result.subList(1,now_result.size());
                Collections.sort(sublist);
            }

sublist是指针,没有新创建对象,所以只排序sublist就可以实现对于[1,end]的排序。

3、对于循环中的对象进行增删使用迭代器

next() - 返回迭代器的下一个元素,并将迭代器的指针移到下一个位置。

hasNext() - 用于判断集合中是否还有下一个元素可以访问。

remove() - 从集合中删除迭代器最后访问的元素(可选操作)。

// 引入 ArrayList 和 Iterator 类
import java.util.ArrayList;
import java.util.Iterator;

public class RunoobTest {
    public static void main(String[] args) {
        ArrayList<Integer> numbers = new ArrayList<Integer>();
        numbers.add(12);
        numbers.add(8);
        numbers.add(2);
        numbers.add(23);
        Iterator<Integer> it = numbers.iterator();
        while(it.hasNext()) {
            Integer i = it.next();
            if(i < 10) {  
                it.remove();  // 删除小于 10 的元素
            }
        }
        System.out.println(numbers);
    }
}

你可能感兴趣的:(java,数据结构,开发语言)