2017-04-13 39 views
1

所以我不能添加一个随机索引来传递我i [x] = pass [rand.nextInt(pass.size())];如何添加两个char []到列表<Object>?

char[] azL = {'a', 'b', 'c'}; 

char[] nzL = {'0', '1', '2'}; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    initializeValues(); 
    cha(); 

    but.setOnClickListener(new View.OnClickListener() { 
     int Plength = 6; 

     char[] i = new char[Plength]; 

     List<Object> pass = new ArrayList<>(); 


     @Override 
     public void onClick(View v) { 

      for (int x = 0; x < Plength; x++) { 
       i[x] = pass[rand.nextInt(pass.size())]; 

      } 
      textV.setText(String.valueOf(i)); 
     } 
    }); 

} 
public void cha() { 
    List<Object> pass = new ArrayList<>(); 
    pass.add(azL[rand.nextInt(azL.length)]); 
    pass.add(nzL[rand.nextInt(azL.length)]); 
} 

它说: “预计数组类型;发现:“java.util.List的”,我不知道该怎么do..please帮助

回答

2
i[x] = pass[rand.nextInt(pass.size())]; 

pass不是一个数组它是A List。你使用[]的语法是用于数组的。

做的正确的方法是

i[x] = pass.get(rand.nextInt(pass.size())) 
1

这应该

i[x] = pass[rand.nextInt(pass.size())]; 

i[x] =pass.get(rand.nextInt(pass.size()));