Java中的LinkedBlockingDeque offer()方法

这个 报价(E) 方法 LinkedBlockingDeque 将参数中传递的元素插入到Deque的末尾。如果容器的容量已超过,那么它不会像add()和addFirst()函数那样返回异常。

null

语法:

public boolean offer(E e)

参数: 此方法接受一个强制参数 E 这是要插入到LinkedBlockingDeque末尾的元素。

返回: 此方法返回 符合事实的 如果元素已插入,则返回 错误的

下面的程序演示了LinkedBlockingDeque的offer()方法:

项目1:

// Java Program Demonstrate offer()
// method of LinkedBlockingDeque
import java.util.concurrent.LinkedBlockingDeque;
import java.util.*;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of LinkedBlockingDeque
LinkedBlockingDeque<Integer> LBD
= new LinkedBlockingDeque<Integer>( 4 );
// Add numbers to end of LinkedBlockingDeque
LBD.offer( 7855642 );
LBD.offer( 35658786 );
LBD.offer( 5278367 );
LBD.offer( 74381793 );
// Cannot be inserted
LBD.offer( 10 );
// cannot be inserted hence returns false
if (!LBD.offer( 10 ))
System.out.println( "The element 10 cannot be inserted" +
" as capacity is full" );
// before removing print queue
System.out.println( "Linked Blocking Deque: " + LBD);
}
}


输出:

The element 10 cannot be inserted as capacity is full
Linked Blocking Deque: [7855642, 35658786, 5278367, 74381793]

项目2:

// Java Program Demonstrate offer()
// method of LinkedBlockingDeque
import java.util.concurrent.LinkedBlockingDeque;
import java.util.*;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of LinkedBlockingDeque
LinkedBlockingDeque<String> LBD
= new LinkedBlockingDeque<String>( 4 );
// Add numbers to end of LinkedBlockingDeque
LBD.offer( "abc" );
LBD.offer( "gopu" );
LBD.offer( "geeks" );
LBD.offer( "richik" );
// Cannot be inserted
LBD.offer( "hii" );
// cannot be inserted hence returns false
if (!LBD.offer( "hii" ))
System.out.println( "The element 'hii' cannot be inserted" +
" as capacity is full" );
// before removing print queue
System.out.println( "Linked Blocking Deque: " + LBD);
}
}


输出:

The element 'hii' cannot be inserted as capacity is full
Linked Blocking Deque: [abc, gopu, geeks, richik]

参考: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/LinkedBlockingDeque.html#offer(E)

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享