在队列中搜索String

时间:2014-12-03 20:29:03

标签: java queue

我对编程有点新鲜,很抱歉,如果这很愚蠢......

我有一个字符串队列,我想要搜索代码关于元素" E"在这段代码中。 因为每次出现此错误:

  

字符串无法转换为char。

public class Queue<Character> {
private java.util.LinkedList<Character> list = new java.util.LinkedList<Character>();
public Queue() {
}
public void clear() {
list.clear();
}
public boolean isEmpty() {
return list.isEmpty();
}
public Character firstEl() {
return list.getFirst();
}
public Character dequeue() {
return list.removeFirst();
}
public void enqueue(Character el) {
list.addLast(el);
}
public String toString() {
return list.toString();
}

public static void main(String []arg) {
Queue<String> student = new Queue<String>();
student.enqueue("A");
student.enqueue("B");
student.enqueue("C");
student.enqueue("D");
student.enqueue("E");
student.enqueue("F");
System.out.println(student.toString());
String mStr = student.dequeue();
System.out.println(mStr + " came first and being served first");
}
}

2 个答案:

答案 0 :(得分:1)

student.enqueue("A");

应替换为:

student.enqueue('A');

双引号创建一个字符串,并且enqueue需要一个字符。

答案 1 :(得分:0)

&#34;我有一个字符串队列,我想要搜索代码关于元素&#34; E&#34;在此代码&#34;

我认为您要求代码在链接列表中找到一些元素?

public int find(java.lang.String string){
    for(int i = 0; i < list.size(); i++){
        if(list.get(i).equals(string)) return i;
    }
    return -1;
}

此代码将一些字符串作为参数,如果该元素存在于列表中,则返回找到它的索引。如果它不存在,则返回-1。

如果您在打印链接列表后立即执行System.out.println(student.find("E"));,则会获得4。