[RESOLVIDO]Como ordenar uma distancia para cada valor do array

Pessoal, eu tenho um ArrayList onde estão gravados os números de uma reta. E eu quero exibi-los na tela com drawString, mas não consigo ordenar uma posição para cada valor do array, todos são exibidos no mesmo lugar, como eu posso colocar uma posição para cada valor do ArrayList?

Eu tentei usar este código, mas não está dando certo:

int i = 0;
int ib = 0;
while(i < TotalY){
     for(int valores : Valores_Grafico.getDadosY()){
          int cont = Valores_Grafico.getDadosY().size();
          g.drawString(String.valueOf(valores), cont*1, ((cont*100)/2));
          g.drawLine(((cont*100)/2)+25, cont*100, ((cont*100)/2)+25, 50);
          g.drawString("Y", ((cont*100)/2)+22, ((cont*100)/2)-((cont*100)/2)+25);
     }
     i++;
}

Não deu pra entender muito bem o que vc quer. Vc quer ordenar o ArrayList e exibi-lo na tela?
tente se explicar melhor para que possamos ajudar.

Eu quero exibir os dados do ArrayList usanndo o Graphics e o comendo drawString, só que todos os valores do ArrayList são exibidos no mesmo lugar.

Para mostra os valores do ArrayList com o drawString e muito simples vc passa a string e as coordenadas x e y da tela como a própria documentação diz.

drawString

public abstract void drawString(String str,
int x,
int y)

Draws the text given by the specified string, using this graphics context’s current font and color. The baseline of the leftmost character is at position (x, y) in this graphics context’s coordinate system.

Parameters:
str - the string to be drawn.
x - the x coordinate.
y - the y coordinate.

Deve esta acontecendo alguma coisa no calculo que vc ta fazendo.

O valor da variável “count” esta vindo correto?(pode esta retornando zero?).
Será que a dimensão da sua tela não é muito pequena para os valores retornados por esses calculo que vc esta fazendo?

Além disso, esse calculo q vc faz pode retorna valores reais (valores fracionados, double) e o método deve esta fazendo a conversão e ficando so com a parte inteira (ex: 3,14 -> 3 nesse caso se todos os calculo estiverem retornando valores na faixa de 3,… alguma coisa justificaria as strings estarem sempre no mesmo lugar).

Tente depurar o código para ver oq realmente ta acontecendo?

Não entendi muito bem, tem algum exemplo na web?

segue um exemplo simples q eu fiz aqui ve se vc entende melhor

import java.awt.BorderLayout;
import java.awt.Graphics;
import java.util.ArrayList;
import javax.swing.JFrame;
import javax.swing.JPanel;


public class WriteStrign extends JPanel{

	private ArrayList<String> list;
	
	public WriteStrign() {
		
		list = new ArrayList<String>();
		
		list.add("String 1");
		list.add("String 2");
		list.add("String 3");
	}
	
	@Override
	public void paint(Graphics g) {
		int x = 25; //posição no eixo X
		int y = 25; //posição no eixo Y
		
		for (String string : list) { //percorre o ArryList
			g.drawString(string, x, y);
			y+=25; //atualiza a posição no eixo Y para que as strings sejam desenhadas uma abaixo da outra
                        //a posição da string na tela e feita através das variaveis x e y.
		}
	}
	
	public static void main(String[] args) {
		WriteStrign panel = new WriteStrign();
		
		JFrame tela = new JFrame();
		tela.setTitle("Ajuda");
		tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		tela.setLayout(new BorderLayout());
		tela.setSize(400, 400);
		tela.setLocationRelativeTo(null);
		tela.setVisible(true);
		tela.add(panel);
	}
}

Valeu cara deu certo!