java queue toarray_Java PriorityBlockingQueue toArray()用法及代码示例

java queue toarray_Java PriorityBlockingQueue toArray()用法及代码示例toArray()PriorityBlockingQueue的toArray方法用于以适当的顺序创建一个数组,该数组具有与此PriorityBlockingQueue相同的元素。实际上,此方法将所有元素从PriorityBlockingQueue复制到新数组。此方法充当数组和PriorityBlockingQueue之间的桥梁。用法:publicObject[]toArray()返回值:此方法…

大家好,又见面了,我是你们的朋友全栈君。

toArray()

PriorityBlockingQueue的toArray方法用于以适当的顺序创建一个数组,该数组具有与此PriorityBlockingQueue相同的元素。实际上,此方法将所有元素从PriorityBlockingQueue复制到新数组。此方法充当数组和PriorityBlockingQueue之间的桥梁。

用法:

public Object[] toArray()

返回值:此方法返回一个包含PriorityBlockingQueue元素的数组。

下面的程序说明PriorityBlockingQueue类的toArray()方法:

示例1:程序演示在PriorityBlockingQueue上使用toArray()方法从包含数字的PriorityBlockingQueue创建数字数组。

// Java Program Demonstrate toArray()

// method of PriorityBlockingQueue

import java.util.concurrent.PriorityBlockingQueue;

public class GFG {

public static void main(String[] args)

{

// define capacity of PriorityBlockingQueue

int capacityOfQueue = 5;

// create object of PriorityBlockingQueue

PriorityBlockingQueue PrioQueue

= new PriorityBlockingQueue(capacityOfQueue);

// Add numbers to PriorityBlockingQueue

PrioQueue.offer(35658786);

PrioQueue.offer(5278367);

PrioQueue.offer(74381793);

PrioQueue.offer(87625142);

// create an array of elements of PriorityBlockingQueue

Object[] array = PrioQueue.toArray();

// print elements of array

System.out.println(“Array Contains:”);

for (Object i : array) {

System.out.print(i + ” “);

}

}

}

输出:

Array Contains:

5278367 35658786 74381793 87625142

示例2:程序演示在PriorityBlockingQueue上使用toArray()方法从包含字符串值的PriorityBlockingQueue创建字符串数组。

// Java Program Demonstrate toArray()

// method of PriorityBlockingQueue

import java.util.concurrent.PriorityBlockingQueue;

import java.util.*;

public class GFG {

public static void main(String[] args)

{

// define capacity of PriorityBlockingQueue

int capacityOfQueue = 5;

// create object of PriorityBlockingQueue which contains

// name of students

PriorityBlockingQueue names

= new PriorityBlockingQueue(capacityOfQueue);

// Add names of students of girls college

names.offer(“Joyita”);

names.offer(“Bristi”);

names.offer(“Riya”);

// Create a array by calling toArray() method

Object[] array = names.toArray();

// Print List of names

System.out.println(“Queue is ” + names);

// Print elements of array

System.out.println(“The array created by toArray() is:”);

for (Object i : array) {

System.out.println(i + ” “);

}

}

}

输出:

Queue is [Bristi, Joyita, Riya]

The array created by toArray() is:

Bristi

Joyita

Riya

toArray(T[] a)

PriorityBlockingQueue的toArray(T [] a)方法用于按正确顺序返回包含与该PriorityBlockingQueue元素相同的元素的数组。此方法仅在一种情况下与toArray()不同。如果PriorityBlockingQueue大小小于或等于传递的数组,则返回的数组的类型与参数中传递的数组的类型相同。否则,将分配一个与指定数组相同类型的新数组,并且该数组的大小等于此队列的大小。此方法充当数组和集合之间的桥梁。

用法:

public T[] toArray(T[] a)

参数:此方法将数组作为参数,如果队列足够大,则要将队列的所有元素都复制到该数组中。否则,将为它分配一个具有相同运行时类型的新数组。

返回值:此方法返回一个包含此队列中所有元素的数组。

异常此方法引发以下异常:

ArrayStoreException:当传递的数组与PriorityBlockingQueue的元素类型不同时。

NullPointerException :如果传递的数组为Null。

下面的程序说明PriorityBlockingQueue类的toArray(T [] a)方法:

示例1:该程序演示PriorityBlockingQueue上的toArray(T [] a)方法。

// Java Program Demonstrate toArray(T[] a)

// method of PriorityBlockingQueue

import java.util.concurrent.PriorityBlockingQueue;

import java.util.concurrent.TimeUnit;

public class GFG {

public static void main(String[] args)

throws InterruptedException

{

// define capacity of PriorityBlockingQueue

int capacityOfQueue = 3;

// create object of PriorityBlockingQueue

PriorityBlockingQueue PrioQueue

= new PriorityBlockingQueue(capacityOfQueue);

// Add names of students of girls college

PrioQueue.offer(“Joyi”);

PrioQueue.offer(“Rani”);

PrioQueue.offer(“Riya”);

// Creating the array

String[] array = new String[capacityOfQueue];

// Calling toArray(T[] a) method

Object[] ReturnArray = PrioQueue.toArray(array);

// Print queue

System.out.println(“Queue is ” + PrioQueue);

// Print elements of array passed as parameter

System.out.println();

System.out.println(“The array passed to toArray() is:”);

for (Object i : array) {

System.out.println(i);

}

// Print elements of array retuned by method toArray()

System.out.println();

System.out.println(“The array retuned by toArray() is:”);

for (Object i : ReturnArray) {

System.out.println(i);

}

}

}

输出:

Queue is [Joyi, Rani, Riya]

The array passed to toArray() is:

Joyi

Rani

Riya

The array retuned by toArray() is:

Joyi

Rani

Riya

示例2:演示由PriorityBlockingQueue的toArray(T [] a)方法引发的异常的程序。

// Java Program Demonstrate toArray(T[] a)

// method of PriorityBlockingQueue

import java.util.concurrent.PriorityBlockingQueue;

import java.util.concurrent.TimeUnit;

public class GFG {

public static void main(String[] args)

throws InterruptedException

{

// define capacity of PriorityBlockingQueue

int capacityOfQueue = 3;

// create object of PriorityBlockingQueue

PriorityBlockingQueue PrioQueue

= new PriorityBlockingQueue(capacityOfQueue);

// Add names of students of girls college

PrioQueue.offer(“Joyi”);

PrioQueue.offer(“Rani”);

PrioQueue.offer(“Riya”);

// Creating the array with null value

String[] array = null;

try {

// Calling toArray(T[] a) method

Object[] ReturnArray = PrioQueue.toArray(array);

}

catch (Exception e) {

System.out.println(“Exception thrown:” + e);

}

}

}

输出:

Exception thrown:java.lang.NullPointerException

参考:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146609.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 做一个“代码模块”交易的网站

    做一个“代码模块”交易的网站

    2021年9月12日
  • ETL的开发过程[通俗易懂]

    ETL的开发过程[通俗易懂]在生产环境中,使用shell脚本完成一次etl操作1.定义一个etl函数,里面传入json行数据,用json.loads加载行数据,并对行数据进行判断,如果没有行数据,或data字段没有在行数据里,就直接返回空的结果,否则就继续往下执行2.接着获取行里的数据,用for循环判断,如果包含某个值,我就将变量赋值取出,装在集合容器里3.设置sparksession会话,并ena…

    2022年5月23日
  • 卡尔曼滤波原理详解及系统模型建立(simulink)

    卡尔曼滤波原理详解及系统模型建立(simulink)卡尔曼滤波原理详解及系统模型建立(simulink)卡尔曼滤波器卡尔曼滤波器是在上个世界五六十年代的时候提出的,到今天已经有六十年左右的时间,但卡尔曼滤波算法不管在控制、制导、导航或者通讯方面对数据的预测能力依然处在一个不可撼动的位置上,但是很多人对于其算法内部的工作原理究竟是怎么运作的依然不理解,所以在工程上很多人都只是把卡尔曼滤波当成是一种“黑箱”预测算法,并不清楚内部原理。但实际上没有任…

    2022年6月16日
  • Vue文件上传问题合集

    Vue文件上传问题合集目录1.背景2.环境3.问题集1)文件上传完成后,文件名的回显2)文件上传完成前的加载状态3)文件上传作为必填项1.背景在使用Vue+ElementUI进行前端工程开发中,遇到一些文件上传的问题,包括上传、回显、等待等。这里做一些记录,方便以后查看2.环境npm 6.14.12 vue-admin-template 4.4.0 axios 0.18.1 element-ui 2.13.2 3.问题集1)文件上传完成后,文件名

    2022年8月16日
  • 原生js添加元素

    原生js添加元素今天做页面使用的mui,因为使用mui情况下无法使用jquery,于是在ajax请求完毕添加元素的时候发现自己竟然对原生js添加元素的方法有点模糊了,真是越活越倒退了,赶紧整理一波。首先最简单的innerHTML,这个不想多说,入门新手喜欢这么用,但他的缺点也很明显:不管你渲染部分还是全部,始终需要替换原先所有的子元素,也就是需要重复渲染,会增加浏览器压力。接下来就是正题了,js推荐是这样…

    2022年6月22日
  • 有刷/无刷动力电调与马达知识

    有刷/无刷动力电调与马达知识模型车需要行驶,就跟真车一样,需要一套动力单元,也有分电动和油动,至于混合动力这个估计就不需要奢望了,对于车模这么小的空间来说是不现实的,而且模型车也不需要考虑燃油经济性的问题。本文则重点介绍电动模型的动力单元。电动模型的动力,主要是指2个元件:第一就是带动车架行驶的电机(Motor),也称马达/摩打等。第二就是控制电机转速的调速器(SpeedController),很久之前早期的调速器…

    2022年5月27日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号