大家好,关于<<是什么意思java很多朋友都还不太明白,今天小编就来为大家分享关于学完java基础下一步学什么的知识,希望对各位有所帮助!
本文目录
学完java基础下一步学什么
下一步进阶。Java多线程、NIO、高并发、周边主流框架、数据库优化等前沿技术要学习下。Java主流技术分享:SpringBoot、SpringCloud、Docker、dubbo、redis、多线程高并发、数据库性能调优等等。
java中的贪吃蛇程序
importjava.awt.*;
importjavax.swing.*;
importjava.awt.event.*;
importjava.util.*;
publicclassSnakeGameextendsJFrameimplementsKeyListener{
privateintstat=1,direction=0,bodylen=6,headx=7,heady=8,
tailx=1,taily=8,tail,foodx,foody,food;//初始化定义变量
publicfinalintEAST=1,WEST=2,SOUTH=3,NORTH=4;//方向常量
int[][]fillblock=newint[20][20];//定义蛇身所占位置
publicSnakeGame(){//构造函数
super("贪吃蛇");
setSize(510,510);
setVisible(true);//设定窗口属性
addKeyListener(this);//添加监听
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
for(inti=1;i<=7;i++)fillblock[i][8]=EAST;//初始化蛇身属性
direction=EAST;//方向初始化的设置
FoodLocate();//定位食物
while(stat==1){
fillblock[headx][heady]=direction;
switch(direction){
case1:headx++;break;
case2:headx--;break;
case3:heady++;break;
case4:heady--;break;
}//蛇头的前进
if(heady>19||headx>19||tailx>19||taily>19||heady<0||headx<0||tailx<0||taily<0||fillblock[headx][heady]!=0){
stat=0;
break;
}//判断游戏是否结束
try{
Thread.sleep(150);}
catch(InterruptedExceptione){}//延迟
fillblock[headx][heady]=direction;
if(headx==foodx&&heady==foody){//吃到食物
FoodLocate();
food=2;
try{
Thread.sleep(100);}
catch(InterruptedExceptione){}//延迟
}
if(food!=0)food--;
else{tail=fillblock[tailx][taily];
fillblock[tailx][taily]=0;//蛇尾的消除
switch(tail){
case1:tailx++;break;
case2:tailx--;break;
case3:taily++;break;
case4:taily--;break;
}//蛇尾的前进
}
repaint();
}
if(stat==0)
JOptionPane.showMessageDialog(null,"GAMEOVER","GameOver",JOptionPane.INFORMATION_MESSAGE);
}
publicvoidkeyPressed(KeyEvente){//按键响应
intkeyCode=e.getKeyCode();
if(stat==1)switch(keyCode){
caseKeyEvent.VK_UP:if(direction!=SOUTH)direction=NORTH;break;
caseKeyEvent.VK_DOWN:if(direction!=NORTH)direction=SOUTH;break;
caseKeyEvent.VK_LEFT:if(direction!=EAST)direction=WEST;break;
caseKeyEvent.VK_RIGHT:if(direction!=WEST)direction=EAST;break;
}
}
publicvoidkeyReleased(KeyEvente){}//空函数
publicvoidkeyTyped(KeyEvente){}//空函数
publicvoidFoodLocate(){//定位食物坐标
do{
Randomr=newRandom();
foodx=r.nextInt(20);
foody=r.nextInt(20);
}while(fillblock[foodx][foody]!=0);
}
publicvoidpaint(Graphicsg){//画图
super.paint(g);
g.setColor(Color.BLUE);
for(inti=0;i<20;i++)
for(intj=0;j<20;j++)
if(fillblock[i][j]!=0)
g.fillRect(25*i+5,25*j+5,24,24);
g.setColor(Color.RED);
g.fillRect(foodx*25+5,foody*25+5,24,24);
}
publicstaticvoidmain(String[]args){//主程序
SnakeGameapplication=newSnakeGame();
}
}
好了,文章到这里就结束啦,如果本次分享的<<是什么意思java和学完java基础下一步学什么问题对您有所帮助,还望关注下本站哦!