Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 字符串作为JLabel名称_Java_String_Swing - Fatal编程技术网

Java 字符串作为JLabel名称

Java 字符串作为JLabel名称,java,string,swing,Java,String,Swing,我在一个ArrayList中进行迭代,并为其中的每个值创建新的JLabel。JLable name应该是我列表中的一个值 ArrayList<String> fieldsList = new ArrayList<String>(); for (int numberOfFields = 0; numberOfFields <= fieldsList.size(); numberOfFields++) { String fieldName = fie

我在一个ArrayList中进行迭代,并为其中的每个值创建新的JLabel。JLable name应该是我列表中的一个值

ArrayList<String> fieldsList = new ArrayList<String>();

for (int numberOfFields = 0; numberOfFields <= fieldsList.size(); numberOfFields++) {

        String fieldName = fieldsList.get(numberOfFields);

        JLabel "value from list"= new JLabel(fieldName + ":"); //here, in "" the name of JLabel should be the same as fieldName

    }
ArrayList fieldsList=new ArrayList();

对于(int numberofields=0;numberofields您不能这样做。另一种方法是创建jlabel列表

ArrayList<String> fieldsList = new ArrayList<String>();

JLabel[] lablearr=new JLabel[fieldsList.size()]; //lable array

for (int numberOfFields = 0; numberOfFields < fieldsList.size(); numberOfFields++) {

        String fieldName = fieldsList.get(numberOfFields);

        lablearr[numberOfFields]= new JLabel(fieldName + ":"); 

 }
例如,如果您想调用一个名为Myable:
的jlable,那么您可以在arraylist-
字段列表中循环,找到“Myable”的索引,并通过该索引调用jlable。

我就是这样做的:

for (String fieldName : fieldsList) {
        {
            {
                JLabel lbl = new JLabel(fieldName + ":");
                lbl.setBounds(33, counter, 130, 14);
                getContentPane().add(lbl);
            }
            counter += 25;
        }
    }

它对我有用。

你不能这么做。它有什么用呢?当我在问题中看到“获取或分配变量名”时,我总是会畏缩。变量“名”其实并不那么重要,对于许多对象都不存在,在编译代码中也几乎不存在。如果一个对象被几个变量引用,哪一个代表“名”对于此对象?更重要的是对象引用以及如何获取它们。如果必须将对象与字符串关联,一种干净的方法是使用映射,例如
HashMap
HashMap
,这取决于您希望将其用作键的对象,但同样不要过多地依赖变量名,因为nal变量可以随时更改引用,并且对象可以由多个变量引用。
for (String fieldName : fieldsList) {
        {
            {
                JLabel lbl = new JLabel(fieldName + ":");
                lbl.setBounds(33, counter, 130, 14);
                getContentPane().add(lbl);
            }
            counter += 25;
        }
    }