动态引用不同的JLabel

问题描述 投票:0回答:1

我有一堆JLabel,方便地命名为:labelhely_0labelhely_1,依此类推。它们也以该顺序存储在名为helyek的ArrayList中。我想随机访问它们,所以我得到了arraylist的大小,并用它来生成数字,在这种情况下,是JLabel的所需“索引”像这样int ujindex=helyek.indexOf("labelhely_"+indexx);有没有一种方法可以以认为它是对象名称的方式来转换String?我需要这个,因为我要从ArrayList中删除东西,使索引混乱。

java string arraylist jlabel indexof
1个回答
0
投票

您说的不起作用,您的ArrayList包含JLabels而不是String实例,因此,indexOf("labelhely_0")将返回-1(表示:未找到)。毕竟,字符串"labelhely_0"不在您的列表中(但是,包含该文本的JLabel不在此列表中。)>

无法将字符串“投射”到JLabel:强制转换是断言事物是另一回事的行为。 (您可能已经了解到它可以转换事物;这不是强制类型转换的功能;仅适用于基元,而字符串和jlabel不是,也不能成为基元)。

鉴于它们的顺序相同,并且您要使用indexx,所以ujindex等于indexx,所以整个操作对我来说毫无意义。

© www.soinside.com 2019 - 2024. All rights reserved.