我是靠谱客的博主 火星上柚子,最近开发中收集的这篇文章主要介绍ListIterator.add() 添加元素 位置,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

iterator开始位置在第一个位置之前,经过next()会依次后移(这玩意不指向元素啊 加塞的)

ListIterator.add() :加入元素

新加元素的位置在下一个元素之前,很多说者加在迭代器的位置(这个表达有么有很含糊?)

红牛高能量===》(当当当)  ===>这个是加在相当于迭代器之前的位置  即:用next()是访问不到的 调用previous()愉快的访问到了

说明它是这样的:



ListIterator (Java Platform SE 8 )

void add(E e)
Inserts the specified element into the list (optional operation). The element is inserted immediately before the element that would be returned by next(), if any, and after the element that would be returned by previous(), if any. (If the list contains no elements, the new element becomes the sole element on the list.) The new element is inserted before the implicit cursor: a subsequent call to next would be unaffected, and a subsequent call to previous would return the new element. (This call increases by one the value that would be returned by a call to nextIndex or previousIndex.)
Parameters:e - the element to insertThrows: UnsupportedOperationException - if the add method is not supported by this list iterator ClassCastException - if the class of the specified element prevents it from being added to this list IllegalArgumentException - if some aspect of this element prevents it from being added to this list

也就是说===》listiterator.add()方法会把新元素添加到listiterator当前所指位置的左边,listiterator.next()不鸟这个新来的不鸟他(不管正向还是反向都不管  previous()可以联系它,安慰它的小心心 )

为啥子这样说呢,因为:

package core_technology;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
 
/**
 * @author 张蕊
 *
 */
public class  LinkedListTest {
	public static void main(String[] args) {
		//建立一个链表
		List<String> staff=new LinkedList<String>();
		//增
		staff.add("zhangrui");
		staff.add("zhanger");
		staff.add("zhangsan");
		//利用ListIterator删除  删除刚刚跳过的元素
		ListIterator<String> iterator=staff.listIterator();
		String first =iterator.next();
		iterator.remove();
		
		//Iterator
//		Iterator<String > iterator2=staff.iterator();
//		String first =iterator2.next();
//		iterator2.remove();
//		System.out.print("first:"+first+'n');  //输入结果:first:zhangrui
//		
		//被添加到迭代器之前(离头近的地方) 即用next()是访问不到的  要用previous   才能访问的到
		iterator.add("zhangruilive");
		
		String second=iterator.previous();
		System.out.print("second:"+second);
		
		//遍历List元素
		System.out.println("遍历list中元素,方法一");
		for(String str:staff)
			System.out.print(str+"  ");
		
		System.out.println("方法二:");
		iterator=staff.listIterator();
		while (iterator.hasNext()) {
			System.out.println(iterator.next()+"  ");
			
		}
	}
 
}
	

 

运行结果:

 

就喜欢被指错:热烈欢迎大佬指教

最后

以上就是火星上柚子为你收集整理的ListIterator.add() 添加元素 位置的全部内容,希望文章能够帮你解决ListIterator.add() 添加元素 位置所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部