java抽绳数组列表
如果我在java中使用drawString(String,Int,Int)命令。如何存储/调用存储在ArrayList中的不同图形 那么比如说,java抽绳数组列表,java,user-interface,arraylist,paint,Java,User Interface,Arraylist,Paint,如果我在java中使用drawString(String,Int,Int)命令。如何存储/调用存储在ArrayList中的不同图形 那么比如说, ArrayList<what type will this be???> list = new ArrayList; int pos = 0; for (int i = 0; i < list.size(); i++) { g.get(i).drawString("hello", 50, 50 + pos); pos
ArrayList<what type will this be???> list = new ArrayList;
int pos = 0;
for (int i = 0; i < list.size(); i++) {
g.get(i).drawString("hello", 50, 50 + pos);
pos += 20;
}
ArrayList list=新的ArrayList;
int pos=0;
对于(int i=0;i
你的意思是:
list.get(i).drawString("hello", 50, 50 + pos);
如果要在
ArrayList
中存储不同的对象/形状,T必须是定义drawString()
的超类。否则此代码将无法编译。我将其用于一个程序:
ArrayList<String[]> StringsToDraw = new ArrayList<String[]>();
StringsToDraw.add(new String[] {"Hello","20","35"});
StringsToDraw.add(new String[] {"World","100","100"});
@Override
public void paint(Graphics g){
for(String[] printMe : StringsToDraw){
drawString(g, printMe[0], printMe[1], printMe[2])
}
}
public void drawString(Graphics gr, String text, String xString, String yString){
int x = Integer.parseInt(xString);
int y = Integer.parseInt(yString);
gr.drawString(text, x, y);
}
ArrayList StringsToDraw=new ArrayList();
添加(新字符串[]{“Hello”、“20”、“35”});
添加(新字符串[]{“World”、“100”、“100”});
@凌驾
公共空间涂料(图g){
对于(String[]printMe:StringsToDraw){
抽绳(g,printMe[0],printMe[1],printMe[2])
}
}
公共空字符串(图形gr、字符串文本、字符串xString、字符串yString){
intx=Integer.parseInt(xString);
int y=Integer.parseInt(yString);
gr.抽绳(文本,x,y);
}
这样做有什么问题
List<Graphics2D> list = new ArrayList<Graphics2D>();
int pos = 0;
for (Graphics2D g : list) {
g.drawString("hello", 50, 50 + pos);
pos += 20;
}
List List=new ArrayList();
int pos=0;
用于(图形2D:列表){
g、 抽绳(“你好”,50,50+位置);
pos+=20;
}
您可以更好地为每个对象使用,并使用接口列表定义列表对象。如果我是一个整数,我从0到10迭代,在不同位置创建10个字符串“hello”,如果我调用list.get(2).drawString(“hello”,100100);这将只移动列表位置2引用的一个字符串吗?