簡體   English   中英

Java Applet-列表錯誤

[英]Java Applet - List error

好的,所以我正在將ArrayList放入(原始)列表中,並且在編譯時遇到以下錯誤。

C:\Users\Dan\Documents\DanJavaGen\ArrayList_INV.java:29: cannot find symbol
symbol  : constructor List(java.lang.Object[])
location: class java.awt.List
        list = new java.awt.List(arr.toArray());
               ^
C:\Users\Dan\Documents\DanJavaGen\ArrayList_INV.java:50: cannot find symbol
symbol  : method getSelectedValue()
location: class java.awt.List
       System.out.println("You have selected: " + list.getSelectedValue());
                                                      ^
2 errors

碼:

import java.applet.Applet;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.ArrayList;
import java.io.*;
import java.util.*;

public class ArrayList_INV extends JApplet implements MouseListener {

public static String newline;
public static java.awt.List list;
int gold = 123;

    public void init() {



ArrayList<String> arr = new ArrayList<String>();
arr.add("Hatchet");
arr.add("Sword");
arr.add("Shield");
arr.add(gold + " Gold");
System.out.println("You have " + arr.size() + " items in your inventory.");
showInventory(arr);



        list = new java.awt.List(arr.toArray());

        add(list);

        list.addMouseListener(this);

        list.setVisible(true);

    }

public static void showInventory (ArrayList<String> theList) {
for (int i = 0; i < theList.size(); i++) {
System.out.println(theList.get(i));
}
}


    public void mousePressed(MouseEvent e) { }

    public void mouseReleased(MouseEvent e) {

       System.out.println("You have selected: " + list.getSelectedValue());
    }

    public void mouseEntered(MouseEvent e) { }

    public void mouseExited(MouseEvent e) { }

    public void mouseClicked(MouseEvent e) { }

/**
    public void paint(Graphics g) {

    }**/
}

怎么了? 謝謝。

Java一樣無法在列表中找到符號

這里有兩個問題在起作用:

java.awt.List沒有使用Object []的構造函數:

list = new List();
for (String item : arr) {
    list.add(item);
}

java.awt.List具有getSelectedItem()而不是getSelectedValue()

您可以將帶有List的ArrayList如下所示:

public void mouseReleased(MouseEvent e) {
    Object index = list.getSelectedItem();
    System.out.println("You have selected: " + index);
}

根據java.awt.ListAPI文檔 ,沒有公共構造函數接受數組(代碼中的第29行)。 您可以使用no參數構造函數,並使用add()方法一一添加項。

此外,在第50行的方法名稱中有一個錯字:是getSelectedItem() ,而不是getSelectedValue()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM