关于简易扑克牌创建的问题

来源:7-1 简易扑克牌游戏

小幕1314

2016-08-08 20:15

package pkGame;
import java.util.ArrayList;
import java.util.List;

public class pkGame {


//方法一	
    List<pkCard>cardList;
    public void cardList(){
	  cardList=new ArrayList<pkCard>();
	  }
	  
	  
//方法二
public List<pkCard> cardList = new ArrayList<pkCard>(); 



//构造一副扑克牌
	public void cardCreat(){
		 System.out.println("创建一副扑克牌!");
		for (int i = 0; i < 13; i++){  
	        for (int j = 0; j < 4; j++){        
	       //cardList里add添加一副扑克牌
		    cardList.add(new pkCard(pkCard.colname[j],pkCard.numname[i]));
	        }
		}
	    
	    int i=0;
		for(pkCard pkcard:cardList){
			if(i==4){                    //换行操作 :一个数字对应四个花色
				System.out.println("");
				i=0;
			}			
			if(i!=4){
				System.out.print("<"+pkcard.color+pkcard.number+">"+" ");
				i++;
			}			
		}
		
		System.out.print("\n扑克牌创建成功!");

	}	

	public static void main(String[] args) {
	pkGame pg=new pkGame();
	pg.cardCreat();
	

	}

}

当我把cardList单独作为一个类的时候可以用方法一,但是把他放到pkGame类中,就出错了,必须改成public List<pkCard> cardList = new ArrayList<pkCard>(); 这两种有什么区别吗???新手表示不理解额

写回答 关注

3回答

  • ziom
    2016-08-10 20:14:38
    已采纳

    你要用一的就要在用之间先new,其实一和二区别不大,二只是直接在声明的时候就new(创建)好了

    小幕1314

    非常感谢!

    2016-08-11 16:29:06

    共 1 条回复 >

  • ziom
    2016-08-10 17:00:05

    因为方法一没创建,你使用它会报空指针,还要你这注释是怎么写的啊,cardList能叫方法?

    小幕1314

    不是,我是区别于两种表达,所以称为方法一方法二,如果我要用一那样表达的话,正确的应该是什么样的呀,谢谢指导

    2016-08-10 19:46:56

    共 1 条回复 >

  • ziom
    2016-08-10 09:21:03

    没有听明白你的问题,cardList作为一个list集合你如何把它变成单独类?

    小幕1314

    那这样额,为什么在上面的代码里面我用方法一,会报错,用方法二就是正常的

    2016-08-10 16:27:25

    共 1 条回复 >

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题