在下面的程序中,我可否用数组取代switch语句选择颜色种类?可以的话有该怎样用呢?
import java.awt.Graphics;
import javax.swing.JApplet;
import java.awt.*;
import javax.swing.*;
public class WhileCounter extends JApplet{ public  void paint(Graphics g) {
int width = 1,height = 1;
while(width <= 10){
while(height <= 10){

switch(height){
case 1:
g.setColor(Color.red);
g.drawRect(10,10,width*10,height*10);
break;
case 2:
g.setColor(Color.yellow);
g.drawRect(10,10,width*10,height*10);
break;
case 3:
g.setColor(Color.green);
g.drawRect(10,10,width*10,height*10);
break;
case 4:
g.setColor(Color.blue);
g.drawRect(10,10,width*10,height*10);
break;
case 5:
g.setColor(Color.orange);
g.drawRect(10,10,width*10,height*10);
break;
default:
g.drawRect(10,10,width*10,height*10);
}
width++;
height++;
  }
}
}
}

解决方案 »

  1.   

    import java.awt.Graphics;
    import javax.swing.JApplet;
    import java.awt.*;
    import javax.swing.*;
    public class WhileCounter extends JApplet{    final static Color[] COLORS = {Color.RED,
            Color.YELLOW, Color.GREEN, Color.BLUE,
            Color.ORANGE}; public  void paint(Graphics g) {
    int width = 1,height = 1;
    while(width <= 10) {
    while(height <= 10) {
                    if (height >= 1 && height <=5) {
                        Color color = COLORS[height - 1];
                        g.setColor(color);
                    }
                    width++;
                    height++;
      }
    }
    }
    }
      

  2.   

    学习楼上的强人,声明个final型的静态数组来保存颜色变量
    好方法
      

  3.   

    可以是可以,但是我感觉switch可能灵活一点。
      

  4.   

    也许switch会灵活一点,不过实在是要写太多代码了,呵呵。
      

  5.   

    嗯..你应该教大家学习一下你的思路...不错..用声明final型的静态数组来保存颜色变量
      

  6.   

    上面的我觉得用哪个无所谓,可是当程序大的时候还是用switch好点吧,虽然它是要求写很多代码,可是容易叫人马上理解.好的程序应该注重可读性,应该是对写程序的人的级别底很多级别的来说吧,这是个人的看法^_^
      

  7.   

    jsk安装后怎么检测是否安装成功呀?