Tenho uma classe em q preciso setar uma flag apartir de qual checkbox foi selecionado, segue o codigo do metodo:
public void defineSelecionado(){
if(check1.isSelected()){
i.setFlag(1);
}if(check2.isSelected()){
i.setFlag(2);
}if(check3.isSelected()){
i.setFlag(3);
}
preciso setar isso numa classe bean:
private int flag;
public int getFlag() {
return flag;
}
/**
* @param flagExterna the flagExterna to set
*/
public void setFlag(int flag) {
this.flagExterna = flag;
}
Mais o problema é que, quando eu selecionar mais de um checkbox, como q eu faço pra ele retornar os 3 valores por exemplo se eu selecionar os 3??
Peraí, o objetivo é permitir que apenas um seja marcado ou que todos sejam selecionados?
Caso apenas um, não há o que fazer, agora, caso seja para que todos os valores sejam considerados, o ideal é implementar em cada JCheckBox um método que faça essa ação, setar a flag…
ou vc utiliza array de inteiros;[1, 2, 3]
ou vc utiliza uma soma tipo : se soma = 6, os tres foram selecionados;
ou vc utiliza uma String separando por virgulas = “1,2,3”
//exemplo com array int, digo novamente só um exemplo, vc tem várias maneiras de fazer isto ai
public int[] retornaSelecionados(){
int[] retorno = [0,0,0]; //
if(check1.isSelected()){
retorno[0] = 1;
}if(check2.isSelected()){
retorno[1] = 2;
}if(check3.isSelected()){
retorno[2] = 3;
}
}
não ficou muito bonito não, mas … é uma dica ok. 
vlw, obrigado, resolvi o problema do jeito que o rjbcordeiro falou.
Uma alternativa muito comum entre o pessoal de linguagens mais antigas, como o C e o C++, é usar mapas de bits:
http://www.guj.com.br/posts/list/207435.java#1053869
Isso permite guardar todos os valores num inteiro, sem recorrer a arrays.
Uma alternativa mais OO e typesafe é fazer um enum.