日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

【Java开发】Java实现黑客帝国代码雨

發(fā)布時(shí)間:2023/12/31 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Java开发】Java实现黑客帝国代码雨 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

    • 一、黑客帝國代碼雨
      • 1.1canvas實(shí)現(xiàn)接口
      • 1.2 調(diào)用測試代碼
      • 1.3 測試結(jié)果
      • 1.4 附件

一、黑客帝國代碼雨

1.1canvas實(shí)現(xiàn)接口

import java.awt.*; import java.util.Random;public class RainCanvas extends Canvas implements Runnable {private int width, height;private Image offScreen;private char[][] charset;private int[] pos;private Color[] colors = new Color[30];public RainCanvas(int width, int height){this.width = width;this.height = height;Random rand = new Random();charset = new char[width / 10][height / 10];for (int i = 0; i < charset.length; i++){for (int j = 0; j < charset[i].length; j++){charset[i][j] = (char) (rand.nextInt(96) + 48);}}pos = new int[charset.length];for (int i = 0; i < pos.length; i++){pos[i] = rand.nextInt(pos.length);}for (int i = 0; i < colors.length - 1; i++){colors[i] = new Color(0, 255 / colors.length * (i+1), 0);}colors[colors.length - 1] = new Color(255, 255, 255);setBackground(Color.BLACK);setSize(width, height);setVisible(true);}public void strartRain(){new Thread(this).start();}public void drawRain(){if (offScreen == null)return;Random rand = new Random();Graphics g = offScreen.getGraphics();g.clearRect(0, 0, width, height);g.setFont(new Font("Arial", Font.PLAIN, 14));for (int i = 0; i < charset.length; i++){int spend = rand.nextInt(3);for (int j = 0; j < colors.length; j++){int index = (pos[i] + j) % charset[i].length;g.setColor(colors[j]);g.drawChars(charset[i], index, 1, i * 10, index * 10);}pos[i] = (pos[i] + 1) % charset[i].length;}}@Overridepublic void run() {while (true){drawRain();repaint();try {Thread.sleep(50);} catch (InterruptedException e) {e.printStackTrace();}}}@Overridepublic void update(Graphics g){paint(g);}@Overridepublic void paint(Graphics g){if (offScreen == null){offScreen = createImage(width, height);}g.drawImage(offScreen, 0, 0, this);} }

1.2 調(diào)用測試代碼

import javax.swing.*; import java.util.Scanner;public class Rain extends JFrame {private RainCanvas canvas = new RainCanvas(1920, 1080);public Rain(){super("Test");setUndecorated(true);setExtendedState(JFrame.MAXIMIZED_BOTH);setVisible(true);canvas = new RainCanvas(this.getWidth(), this.getHeight()); // canvas = new RainCanvas(800, 600);getContentPane().add(canvas);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}public static void main(String[] args) {Rain rain = new Rain();rain.canvas.strartRain();} }

1.3 測試結(jié)果

1.4 附件

直接下載地址https://download.csdn.net/download/m0_66345324/83162346

總結(jié)

以上是生活随笔為你收集整理的【Java开发】Java实现黑客帝国代码雨的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。