Java: 使用 element() 打印出队列的头部
Java: Printing out the head of a queue using element()
我想使用 element() 方法打印此名称队列的头部,但不知何故不能。
能否以某种方式向我解释为什么它没有?
package lesson1;
import java.util.*;
public class MyClass1{
public static void main(String[] args) {
Queue <String> strings= new LinkedList<String>();
Scanner input= new Scanner(System.in);
System.out.println("Please enter the number of names, n.");
int n= input.nextInt();
System.out.println("Please enter " +n+ " names");
for(int i=0;i<n; i++){
strings.add(input.nextLine());
}
for(String object: strings){
System.out.println(object);
}
System.out.println("The name in front of the queue is: " + strings.element());
}
}
队列中的第一个元素是一个空字符串。
这就是为什么 strings.element()
returns 一个空字符串并且您看到输出 The name in front of the queue is:
.
要消除空字符串添加:
int n= input.nextInt();
input.nextLine(); // this
说明:在调用 nextInt
之后,下一个 nextLine
将消耗包含读取的整数的行的末尾,因此第一个 strings.add(input.nextLine());
将添加一个空字符串到队列中。
我想使用 element() 方法打印此名称队列的头部,但不知何故不能。
能否以某种方式向我解释为什么它没有?
package lesson1;
import java.util.*;
public class MyClass1{
public static void main(String[] args) {
Queue <String> strings= new LinkedList<String>();
Scanner input= new Scanner(System.in);
System.out.println("Please enter the number of names, n.");
int n= input.nextInt();
System.out.println("Please enter " +n+ " names");
for(int i=0;i<n; i++){
strings.add(input.nextLine());
}
for(String object: strings){
System.out.println(object);
}
System.out.println("The name in front of the queue is: " + strings.element());
}
}
队列中的第一个元素是一个空字符串。
这就是为什么 strings.element()
returns 一个空字符串并且您看到输出 The name in front of the queue is:
.
要消除空字符串添加:
int n= input.nextInt();
input.nextLine(); // this
说明:在调用 nextInt
之后,下一个 nextLine
将消耗包含读取的整数的行的末尾,因此第一个 strings.add(input.nextLine());
将添加一个空字符串到队列中。