[英]How can I draw a line between 2 points in Graphics in Java?
我有這段代碼,lista 是一個 ArrayList 點,每次界面用戶拖動鼠標時我都會將其添加到列表中。 但是當我這樣做時,我得到一個錯誤:“AWT-EventQueue-0”java.lang.IndexOutOfBoundsException:索引 -1 超出長度 3”
for(int i=0;i<lista.size();i++){
g.fillOval(lista.get(i).x,lista.get(i).y,radio*2,radio*2);
if(lista.size()>1){
g.drawLine(lista.get(i-1).x,lista.get(i-1).y,lista.get(i-2).x,lista.get(i-2).y);
}
}
我怎樣才能解決這個問題?
在您通過此循環的第一次迭代中,i-1 將為 -1(而 i-2 將為 -2)這就是您的問題所在
for(int i=0;i<lista.size();i++){
g.fillOval(lista.get(i).x,lista.get(i).y,radio*2,radio*2);
if(lista.size()>1){
g.drawLine(lista.get(i-1).x,lista.get(i-1).y,lista.get(i-2).x,lista.get(i-2).y);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.