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");
}
}
}
}
展开
 我来答
freish
推荐于2017-11-22 · TA获得超过2878个赞
知道大有可为答主
回答量:3153
采纳率:0%
帮助的人:2698万
展开全部
这不是错误,没有关系,照样编译执行

出现这个的原因我看到你有一处代码
LinkedList<Block> list=new LinkedList();
应该换成
LinkedList<Block> list=new LinkedList<Block>();

其他地方没注意看了,反正就是这样的问题引起的
匿名用户
2016-08-29
展开全部
我这里可以运行,估计是泛型的问题。。你将Vector v=new Vector();改为:
Vector<Integer> v=new Vector<Integer>();

Enumeration e=v.elements();改为:
Enumeration<Integer> e=v.elements();
再试一下
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式