使用java写一个闪闪发光的心形图案居于正中间
时间: 2023-03-11 13:08:45 浏览: 64
我可以建议你使用Java Swing,利用Graphics2D类绘制心形图案,你可以使用setPaint()来设置闪闪发光的颜色,然后重写paintComponent()方法,在方法中使用drawLine()绘制心形图案,最后利用setLocation()将心形图案居于正中间。
相关问题
用java写一个心形图案
以下是使用Java绘制心形图案的代码示例:
```java
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class HeartShape extends JPanel {
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.RED);
int centerX = getWidth() / 2;
int centerY = getHeight() / 2;
int size = 100;
g.drawArc(centerX - size / 2, centerY - size / 2, size, size, 45, 180);
g.drawArc(centerX, centerY - size / 2, size, size, 45, 180);
g.fillArc(centerX - size / 4, centerY - size / 2, size / 2, size / 2, 0, 360);
}
public static void main(String[] args) {
JFrame frame = new JFrame("Heart Shape");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
frame.setLocationRelativeTo(null);
HeartShape heartShape = new HeartShape();
frame.add(heartShape);
frame.setVisible(true);
}
}
```
代码说明:
- `HeartShape`类继承自`JPanel`,并覆盖了`paintComponent`方法用于绘制心形图案。
- 在`paintComponent`方法中,首先设置颜色为红色,然后计算出心形的中心点坐标和大小。
- 使用`drawArc`方法绘制两个半圆形,分别位于中心点的左右两侧,并且起点是45度,绘制180度。
- 最后使用`fillArc`方法绘制一个实心圆形,位于两个半圆形的交点处。
- 在`main`方法中创建`JFrame`窗口,并将`HeartShape`实例添加到窗口中显示。
运行代码后,将会显示一个绘制好的心形图案。
使用Java语言打印一个心形图案
要使用 Java 语言打印一个心形图案,你可以使用两个 for 循环和一些字符串拼接来实现。你也可以使用 ASCII 码来打印心形图案,这将更加简单。
以下是使用两个 for 循环和字符串拼接的示例代码:
```
public class HeartShape {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
if (i == 0 && j % 3 != 0) {
System.out.print(" ");
} else if (i == 1 && j % 3 == 0) {
System.out.print(" ");
} else if (i - j == 2 || i + j == 8) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println();
}
}
}
```
以下是使用 ASCII 码的示例代码:
```
public class HeartShape {
public static void main(String[] args) {
System.out.println(" ** ");
System.out.println(" * * ");
System.out.println("* *");
System.out.println("* *");
System.out.println("* *");
System.out.println(" * * ");
System.out.println(" ** ");
}
}
```
希望这些示例代码能够帮助你。