gpt4 book ai didi

java - 如何在java中对k-map进行分组?

转载 作者:行者123 更新时间:2023-12-02 06:00:17 25 4
gpt4 key购买 nike

我在java方面不太擅长..我正在一个项目中工作,在我的项目中程序应该绘制k-map,我使用标签来绘制它,它的效果很好..我只是想知道是否有有什么简单的方法可以通过更改标签的背景颜色来进行分组..?问题是我没有任何有效的方法..我唯一的方法是使用可能发生的所有概率对这些概率进行分组并将其放入 if 语句中!(我知道这会是很多概率,尤其是当变量的数量是四个):(

像这样(我不会全部发布):

if(lbl1.getText().equals("1")&& lbl2.getText().equals("")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl1.setOpaque(true);
lbl1.setBackground(Color.blue);
}
else if(lbl1.getText().equals("")&& lbl2.getText().equals("1")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl2.setOpaque(true);
lbl2.setBackground(Color.blue);
}
else if(lbl1.getText().equals("")&& lbl2.getText().equals("")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("1")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl5.setOpaque(true);
lbl5.setBackground(Color.blue);
}
else if(lbl1.getText().equals("")&& lbl2.getText().equals("")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("1")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl6.setOpaque(true);
lbl6.setBackground(Color.blue);
}
else if(lbl1.getText().equals("1")&& lbl2.getText().equals("1")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl1.setOpaque(true);
lbl1.setBackground(Color.blue);
lbl2.setOpaque(true);
lbl2.setBackground(Color.blue);
}

最佳答案

使用名为 labels 的所有 16 个标签的数组(或列表),类似于:

for (final JLabel label : labels) {
// reset others?
if ("1".equals(label.getText()) {
label.setOpaque(true);
label.setBackground(Color.blue);
}
}

关于java - 如何在java中对k-map进行分组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22729539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com