0

我在这一行中收到错误“表达式的非法开始”。我正在创建一个整数数组,我想在其中使用另一种方法,但我无法传递它。

import java.awt.Graphics;
import java.awt.Color;
import java.awt.Image;
import javax.swing.*;
import java.lang.Math;
import java.util.Random;

public class testApp extends JApplet 
{
    public void init() 
{
    this.add(new RandomCardsPanel());
}

public class RandomCardsPanel extends JPanel 
{
    public Image card1, card2, card3, card4, card5, card6, card7, card8, card9, card10, card11, card12, card13;
    public Image card14, card15, card16, card17, card18, card19, card20, card21, card22, card23, card24, card25, card26;
    public Image card27, card28, card29, card30, card31, card32, card33, card34, card35, card36, card37, card38, card39;
    public Image card40, card41, card42, card43, card44, card45, card46, card47, card48, card49, card50, card51, card52;

    public RandomCardsPanel() 
    {
        Image[] card = new Image[52];

        card[0] = getImage( getDocumentBase(), "c1.gif" );
        card[1] = getImage( getDocumentBase(), "c2.gif" );
        card[2] = getImage( getDocumentBase(), "c3.gif" );
        card[3] = getImage( getDocumentBase(), "c4.gif" );
        card[4] = getImage( getDocumentBase(), "c5.gif" );
        card[5] = getImage( getDocumentBase(), "c6.gif" );
        card[6] = getImage( getDocumentBase(), "c7.gif" );
        card[7] = getImage( getDocumentBase(), "c8.gif" );
        card[8] = getImage( getDocumentBase(), "c9.gif" );
        card[9] = getImage( getDocumentBase(), "c10.gif" );
        card[10] = getImage( getDocumentBase(), "cj.gif" );
        card[11] = getImage( getDocumentBase(), "cq.gif" );
        card[12] = getImage( getDocumentBase(), "ck.gif" );
        card[13] = getImage( getDocumentBase(), "d1.gif" );
        card[14] = getImage( getDocumentBase(), "d2.gif" );
        card[15] = getImage( getDocumentBase(), "d3.gif" );
        card[16] = getImage( getDocumentBase(), "d4.gif" );
        card[17] = getImage( getDocumentBase(), "d5.gif" );
        card[18] = getImage( getDocumentBase(), "d6.gif" );
        card[19] = getImage( getDocumentBase(), "d7.gif" );
        card[20] = getImage( getDocumentBase(), "d8.gif" );
        card[21] = getImage( getDocumentBase(), "d9.gif" );
        card[22] = getImage( getDocumentBase(), "d10.gif" );
        card[23] = getImage( getDocumentBase(), "dj.gif" );
        card[24] = getImage( getDocumentBase(), "dq.gif" );
        card[25] = getImage( getDocumentBase(), "dk.gif" );
        card[26] = getImage( getDocumentBase(), "h1.gif" );
        card[27] = getImage( getDocumentBase(), "h2.gif" );
        card[28] = getImage( getDocumentBase(), "h3.gif" );
        card[29] = getImage( getDocumentBase(), "h4.gif" );
        card[30] = getImage( getDocumentBase(), "h5.gif" );
        card[31] = getImage( getDocumentBase(), "h6.gif" );
        card[32] = getImage( getDocumentBase(), "h7.gif" );
        card[33] = getImage( getDocumentBase(), "h8.gif" );
        card[34] = getImage( getDocumentBase(), "h9.gif" );
        card[35] = getImage( getDocumentBase(), "h10.gif" );
        card[36] = getImage( getDocumentBase(), "hj.gif" );
        card[37] = getImage( getDocumentBase(), "hq.gif" );
        card[38] = getImage( getDocumentBase(), "hk.gif" );
        card[39] = getImage( getDocumentBase(), "s1.gif" );
        card[40] = getImage( getDocumentBase(), "s2.gif" );
        card[41] = getImage( getDocumentBase(), "s3.gif" );
        card[42] = getImage( getDocumentBase(), "s4.gif" );
        card[43] = getImage( getDocumentBase(), "s5.gif" );
        card[44] = getImage( getDocumentBase(), "s6.gif" );
        card[45] = getImage( getDocumentBase(), "s7.gif" );
        card[46] = getImage( getDocumentBase(), "s8.gif" );
        card[47] = getImage( getDocumentBase(), "s9.gif" );
        card[48] = getImage( getDocumentBase(), "s10.gif" );
        card[49] = getImage( getDocumentBase(), "sj.gif" );
        card[50] = getImage( getDocumentBase(), "sq.gif" );
        card[51] = getImage( getDocumentBase(), "sk.gif" );

        String cardNumber; 
        double cardRandom;
        int cardRandomNumber;
        int[] ranNum = new int [10];
        Random ran = new Random();


        for (int number = 0; number <=  9; )
        {
            cardRandom = ran.nextInt(52) + 1;
            cardRandomNumber = (int)Math.round( cardRandom );

            if ( cardRandomNumber > 0 && cardRandomNumber <= 52 )
            { 
                ranNum[number] = cardRandomNumber;
                number++;
            }
        }   
    }

   public void paintComponent(Graphics g) 
    {
        setBackground( Color.green );
        g.drawImage( cards[ranNum[0]], 10, 10, this);
    }
}

}

有人知道我在这里做错了什么吗?我觉得好像这是一个简单的错误,但我无法理解。

4

1 回答 1

3

您可以在方法或构造函数中使用的唯一修饰符是 final 或 default。尝试删除 int 数组的 public 修饰符。

尝试改变这一点

        public int[] ranNum = new int [10];  // Its in this line

        int[] ranNum = new int [10];  // Its in this line
于 2012-09-20T22:27:55.553 回答