摘要:以下是一个简单的Java小游戏,玩家需要控制一个方块在屏幕上移动,通过点击屏幕改变方块的方向。当方块碰到屏幕边缘时,方块会反弹。这个游戏简单易懂,适合初学者学习...
购房微信:1808982
84
以下是一个简单的Java小游戏,玩家需要控制一个方块在屏幕上移动,通过点击屏幕改变方块的方向。当方块碰到屏幕边缘时,方块会反弹。这个游戏简单易懂,适合初学者学习Java编程。
```java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class小游戏 extends JFrame {
private Image img;
private int x, y, dx, dy;
public 小游戏() {
setTitle("小游戏");
setSize(400, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
img = new ImageIcon("方块.png").getImage();
x = (getWidth() - img.getWidth()) / 2;
y = (getHeight() - img.getHeight()) / 2;
addMouseMotionListener(new MouseAdapter() {
public void mouseMoved(MouseEvent e) {
int mx = e.getX();
int my = e.getY();
x = mx - img.getWidth() / 2;
y = my - img.getHeight() / 2;
}
});
addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getX() < x + img.getWidth() && e.getX() > x && e.getY() < y + img.getHeight()
&& e.getY() > y) {
dx = (int) (Math.random() * 5) - 2;
dy = (int) (Math.random() * 5) - 2;
}
}
});
}
public void paint(Graphics g) {
super.paint(g);
g.drawImage(img, x, y, this);
}
public static void main(String[] args) {
EventQueue.invokeLater(() -> {
小游戏 ex = new 小游戏();
ex.setVisible(true);
while (ex.isAlive()) {
ex.repaint();
try {
Thread.sleep(10);
} catch (Exception e) {
}
}
});
}
}
```
请注意,为了运行此代码,您需要将"方块.png"替换为您自己的图片文件名,并确保该图片文件位于与代码相同的目录中。

java编程小游戏
这里有一个简单的Java编程小游戏,叫做“猜数字”。玩家需要猜测一个1到100之间的随机数。程序会根据玩家的猜测给出提示,直到玩家猜对为止。
```java
import java.util.Scanner;
public class GuessNumberGame {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int randomNumber = (int) (Math.random() * 100) + 1;
int guess;
boolean isCorrect;
System.out.println("欢迎来到猜数字游戏!请猜一个1到100之间的整数:");
do {
guess = scanner.nextInt();
isCorrect = false;
if (guess < randomNumber) {
System.out.println("猜小了,请再试一次!");
} else if (guess > randomNumber) {
System.out.println("猜大了,请再试一次!");
} else {
System.out.println("恭喜你,猜对了!");
isCorrect = true;
}
} while (!isCorrect);
scanner.close();
}
}
```
要运行此游戏,请将代码复制到一个名为`GuessNumberGame.java`的文件中,然后使用以下命令编译和运行:
```bash
javac GuessNumberGame.java
java GuessNumberGame
```
这个简单的游戏展示了Java的基本语法和功能,如变量、循环、条件语句和用户输入。你可以在此基础上添加更多功能和难度级别。

java可编写的小游戏
在Java中,你可以编写许多有趣的小游戏。以下是一些简单的Java小游戏示例:
1. 井字棋(Tic Tac Toe):
```java
import java.util.Scanner;
public class TicTacToe {
public static void main(String[] args) {
char[][] board = new char[3][3];
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
System.out.print("Enter your move (row " + (i + 1) + ", column " + (j + 1) + "): ");
char move = scanner.next().charAt(0);
board[i][j] = move;
System.out.println("Current board: " + board[i][0] + " " + board[i][1] + " " + board[i][2]);
}
}
int winner = checkWin(board);
if (winner == -1) {
System.out.println("It"s a draw!");
} else {
System.out.println("Winner: " + winner);
}
}
private static int checkWin(char[][] board) {
for (int i = 0; i < 3; i++) {
if (board[i][0] == board[i][1] && board[i][1] == board[i][2]) {
return board[i][0];
}
}
for (int j = 0; j < 3; j++) {
if (board[0][j] == board[1][j] && board[1][j] == board[2][j]) {
return board[0][j];
}
}
if (board[0][0] == board[1][1] && board[1][1] == board[2][2]) {
return board[0][0];
}
if (board[0][2] == board[1][1] && board[1][1] == board[2][0]) {
return board[0][2];
}
return -1;
}
}
```
2.贪吃蛇游戏:
```java
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.LinkedList;
import java.util.Queue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;
public class SnakeGame extends JPanel implements ActionListener {
private static final int WIDTH = 400;
private static final int HEIGHT = 400;
private static final int BLOCK_SIZE = 20;
private static final int DELAY = 100;
private Queue
private int x, y;
private char food;
private boolean running;
public SnakeGame() {
snake = new LinkedList<>();
snake.add(new int[]{WIDTH / 2, HEIGHT / 2});
x = WIDTH / 2;
y = HEIGHT / 2;
food = " ";
running = true;
Timer timer = new Timer(DELAY, this);
timer.start();
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
if (running) {
g.setColor(Color.RED);
g.fillRect(food * BLOCK_SIZE, food * BLOCK_SIZE, BLOCK_SIZE, BLOCK_SIZE);
for (int[] point : snake) {
g.setColor(Color.GREEN);
g.fillRect(point[0], point[1], BLOCK_SIZE, BLOCK_SIZE);
}
} else {
g.setColor(Color.BLACK);
g.drawString("Game Over", WIDTH / 2 - 50, HEIGHT / 2);
}
}
@Override
public void actionPerformed(ActionEvent e) {
if (running) {
int[] head = snake.peek();
int prevX = head[0];
int prevY = head[1];
switch (e.getSource()) {
case "Up":
y = (prevY - BLOCK_SIZE < 0) ? (prevY + BLOCK_SIZE) : prevY - BLOCK_SIZE;
break;
case "Down":
y = (prevY + BLOCK_SIZE > HEIGHT) ? (prevY - BLOCK_SIZE) : prevY + BLOCK_SIZE;
break;
case "Left":
x = (prevX - BLOCK_SIZE < 0) ? (prevX + BLOCK_SIZE) : prevX - BLOCK_SIZE;
break;
case "Right":
x = (prevX + BLOCK_SIZE > WIDTH) ? (prevX - BLOCK_SIZE) : prevX + BLOCK_SIZE;
break;
}
if (x == food && y == food) {
snake.add(new int[]{x, y});
food = (char) ("a" + (food - "a" + 1) % 26);
} else {
snake.poll();
}
repaint();
}
}
public static void main(String[] args) {
JFrame frame = new JFrame("Snake Game");
SnakeGame game = new SnakeGame();
frame.add(game);
frame.setSize(WIDTH, HEIGHT);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
```
这些示例仅用于演示Java游戏编程的基本概念。你可以在此基础上扩展和改进,添加更多功能和细节。
咨询威信:18088
284



