我正在處理下面的代碼,創建一個ArrayList
,對其進行隨機播放,並取前三個元素,但出於某種原因,在啓動for循環時,我在符號「;」上出現語法錯誤。爲什麼在此Java程序的for-loop定義中出現語法錯誤?
import java.util.ArrayList;
public class cardsShuffle {
ArrayList<String> cards = new ArrayList<>()
for (int i = 0; i < 52; i++){
cards.add(String.valueOf(i+1));
java.util.Collections.shuffle(cards);
}
public static void main(String args[]){
cardsShuffle s = new cardsShuffle();
System.out.println(s.cards.get(0));
System.out.println(s.cards.get(1));
System.out.println(s.cards.get(2));
}
1)您在'new ArrayList <>()'之後缺少一個分號。 2)for循環不在任何方法內。你可以創建一個靜態方法,在其中使用for循環,並使用'ArrayList cards = myStaticMethod();'方法使用該方法初始化卡片列表。 3)即使在前兩個之後也會出現錯誤,因爲靜態方法不能引用實例變量。卡片列表必須是靜態的。 –
我把循環內的主要方法,然後我不得不刪除s。從他prin.outln,它現在起作用。 – JSiu