Java中的LinkedBlockingDeque offerFirst()方法

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

null

语法:

public boolean offerFirst(E e)

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

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

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

项目1:

JAVA

// Java Program Demonstrate offerFirst()
// 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.offerFirst( 7855642 );
LBD.offerFirst( 35658786 );
LBD.offerFirst( 5278367 );
LBD.offerFirst( 74381793 );
// Cannot be inserted
LBD.offerFirst( 10 );
// cannot be inserted hence returns false
if (!LBD.offerFirst( 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 fullLinked Blocking Deque: [74381793, 5278367, 35658786, 7855642]

项目2:

JAVA

// Java Program Demonstrate offerFirst()
// 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.offerFirst( "abc" );
LBD.offerFirst( "gopu" );
LBD.offerFirst( "geeks" );
LBD.offerFirst( "richik" );
// Cannot be inserted
LBD.offerFirst( "hii" );
// cannot be inserted hence returns false
if (!LBD.offerFirst( "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 fullLinked Blocking Deque: [richik, geeks, gopu, abc]

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

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