端午特别征文


前言

提示:这里可以添加本文要记录的大概内容:

韩顺平教育的java坦克大战


提示:以下是本篇文章正文内容,下面案例可供参考

一、Java绘图技术

1.g.drawOval()是什么?

画椭圆函数g.drawOval();  (宽=高时候为圆形)  x和y竟然不是圆心坐标

2.Graphics类

        //画图片//获取图片资源   "/图片名字.png"  表示从该项目的根目录获取图片//并且提前把图片放在out目录下面的该项目(project)的文件夹里面Image image=Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/图片名字.png"));g.drawImage(image,左上角坐标x,y,图片宽度,高度,this);//画字符串 写字g.setColor(Color.BLUE);//给画笔设置颜色g.setFont(new Font("隶书",Font.BOLD,50));//设置字体 new Font("字体",是不是初体,大小);g.drawString("想写的字",100,100);  //("",字符串左下角 x,y);

fill3DRect(x,y,w,h,布尔值(用于确定矩形是否显示为高于表面后刻到表面)) 

3.绘画坦克 

 4.java事件处理机制

 5.线程应用0.3版本

先写一个shot子弹类 实现Runnable ;
然后在Hero类里面创建shot对象以及shotEnemyTank方法调用线程;
在MyPanel里面绘画子弹 实现Runnable 重写run方法 间隔100ms 重绘面板.

6.进阶0.4增加功能

1.让敌人的坦克也能够发射子弹(多辆坦克对应 多发子弹)

我想的是 直接在enemyTank类里面添加射击方法
但是 hsp是在 MyPanel里面创建enemyTank集合的时候给每个Tank直接添加子弹 同时启动

2.当我方坦克击中敌人时,敌人消失,如果有爆炸效果更好

//编写方法 判断我方子弹是否击中敌人坦克    //什么时候调用该方法判断? 应该在run方法中public static void hitTank(Shot s,EnemyTank enemyTank){switch (enemyTank.getDirect()){case 0://上下一样case 2:if(s.x>enemyTank.getX()&&s.x<enemyTank.getX()+40&&s.y>enemyTank.getY()&&s.y<enemyTank.getY()+60){s.isLive=false;enemyTank.isLive=false;break;}case 1://左右一样case 3:if(s.x>enemyTank.getX()&&s.x<enemyTank.getX()+60&&s.y>enemyTank.getY()&&s.y<enemyTank.getY()+40){s.isLive=false;enemyTank.isLive=false;break;}}}//然后在前面画敌方坦克的时候加一个判断if(enemyTank==true) 才画  实现坦克消失

爆炸效果:


3.让敌人坦克随机方向移动
4.控制我方坦克和敌人坦克在规定范围移动

二、使用步骤

1.引入库

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2.读入数据

代码如下(示例):

data = pd.read_csv('https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

本文链接:https://my.lmcjl.com/post/8330.html

展开阅读全文

4 评论

留下您的评论.