在二维ArrayList中保存形状和颜色

时间:2019-01-05 03:18:51

标签: java arraylist

我有一个GUI,它使用参数调用函数brushPoint()。然后,我试图将生成的形状及其对应的颜色保存在二维ArrayList中,但无法弄清楚该怎么做。还是有一种更简单的方法来实现这一目标?

button

数组应该看起来像这样:

ArrayList<ArrayList> coloredShapes = new ArrayList<>();

public void brushPoint(int x, int y, int brushSize, Color color) {
    coloredShapes.add(new ArrayList(new Ellipse2D.Double(x - (brushSize / 2), 
            y - (brushSize / 2), brushSize, brushSize), color));
    repaint();
}

1 个答案:

答案 0 :(得分:-2)

是的,您可以使用map归档需求。JavaMap具有默认的键,值功能,因此您可以将键用作形状名称,将值用作颜色。请检查以下代码,如果要获取问题,请编写注释或修改您的问题。

Map<String,String> map=new HashMap<String,String>();  
  map.put("Shape1","Color1");  
  map.put("Shape2","Color2");  
  map.put("Shape3","Color3");  

  // Print output into console 
  for(Map.Entry m:map.entrySet()){  
   System.out.println(m.getKey()+" "+m.getValue());  
  }