java使用了未经检查或不安全的操作
importjava.util.*;classBlock{Stringname;booleanboo=false;publicvoidsetName(Stringname...
import java.util.*;
class Block
{
String name;
boolean boo=false;
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
boolean isMine(){
return boo;
}
public void setBoolean(boolean boo){
this.boo=boo;
}
}
public class MineExample
{
public static void main(String args[]){
int mine=25;
Block block[][]=new Block[8][8];
for(int i=0;i<8;i++){
for(int j=0;j<8;j++){
block[i][j]=new Block();
}
}
LinkedList<Block> list=new LinkedList();
for(int i=0;i<8;i++){
for(int j=0;j<8;j++){
list.add(block[i][j]);
}
}
while(mine>=0){
int size=list.size();
int randomIndex=(int)(Math.random()*size);
Block b=(Block)list.get(randomIndex);
b.setName("@");
b.setBoolean(true);
list.remove(randomIndex);
mine--;
}
for(int i=0;i<8;i++){
for(int j=0;j<8;j++){
if(block[i][j].isMine()){}
else{
int mineNumber=0;
for(int k=Math.max(i-1,0);k<=Math.min(i+1,7);k++){
for(int t=Math.max(j-1,0);t<=Math.min(j+1,7);t++){
if(block[k][t].isMine()){
mineNumber++;
}
}
}
block[i][j].setName(""+mineNumber);
}
}
for(i=0;i<8;i++){
for(int j=0;j<8;j++){
System.out.printf("%2s",block[i][j].getName());
}
System.out.printf("%n");
}
}
}
} 展开
class Block
{
String name;
boolean boo=false;
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
boolean isMine(){
return boo;
}
public void setBoolean(boolean boo){
this.boo=boo;
}
}
public class MineExample
{
public static void main(String args[]){
int mine=25;
Block block[][]=new Block[8][8];
for(int i=0;i<8;i++){
for(int j=0;j<8;j++){
block[i][j]=new Block();
}
}
LinkedList<Block> list=new LinkedList();
for(int i=0;i<8;i++){
for(int j=0;j<8;j++){
list.add(block[i][j]);
}
}
while(mine>=0){
int size=list.size();
int randomIndex=(int)(Math.random()*size);
Block b=(Block)list.get(randomIndex);
b.setName("@");
b.setBoolean(true);
list.remove(randomIndex);
mine--;
}
for(int i=0;i<8;i++){
for(int j=0;j<8;j++){
if(block[i][j].isMine()){}
else{
int mineNumber=0;
for(int k=Math.max(i-1,0);k<=Math.min(i+1,7);k++){
for(int t=Math.max(j-1,0);t<=Math.min(j+1,7);t++){
if(block[k][t].isMine()){
mineNumber++;
}
}
}
block[i][j].setName(""+mineNumber);
}
}
for(i=0;i<8;i++){
for(int j=0;j<8;j++){
System.out.printf("%2s",block[i][j].getName());
}
System.out.printf("%n");
}
}
}
} 展开
2个回答
2016-08-29
展开全部
我这里可以运行,估计是泛型的问题。。你将Vector v=new Vector();改为:
Vector<Integer> v=new Vector<Integer>();
Enumeration e=v.elements();改为:
Enumeration<Integer> e=v.elements();
再试一下
Vector<Integer> v=new Vector<Integer>();
Enumeration e=v.elements();改为:
Enumeration<Integer> e=v.elements();
再试一下
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询