java编写爱心代码
时间: 2025-05-25 21:02:59 浏览: 16
以下是使用 Java 编写的一个绘制爱心形状的代码示例。此代码基于 `Java Swing` 库来创建一个简单的 GUI 界面,并在其中绘制出爱心图案。
### 使用 Java Swing 绘制爱心形状
```java
import javax.swing.*;
import java.awt.*;
public class HeartShape extends JFrame {
public HeartShape() {
setTitle("Love Heart Shape");
setSize(400, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null); // 居中显示窗口
}
@Override
public void paint(Graphics g) {
super.paint(g);
Graphics2D g2d = (Graphics2D) g;
// 设置抗锯齿效果以使线条更平滑
RenderingHints rh = new RenderingHints(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setRenderingHints(rh);
// 定义爱心的颜色
g2d.setColor(Color.RED);
// 上半部分左圆弧
int xLeftArc = 150;
int yTopArc = 80;
int widthArc = 70;
int heightArc = 70;
// 下半部分连接线
int lineXStart = 190;
int lineYStart = 150;
int lineXEnd = 230;
int lineYEnd = 150;
// 上半部分右圆弧
int xRightArc = 220;
int yBottomArc = 80;
// 绘制左圆弧
g2d.fillArc(xLeftArc, yTopArc, widthArc, heightArc, 0, -180);
// 绘制右圆弧
g2d.fillArc(xRightArc, yBottomArc, widthArc, heightArc, 0, -180);
// 连接两部分形成闭合的心形
g2d.drawLine(lineXStart, lineYStart, lineXEnd, lineYEnd);
g2d.drawLine(lineXStart, lineYStart, 190, 190);
g2d.drawLine(lineXEnd, lineYEnd, 230, 190);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
HeartShape frame = new HeartShape();
frame.setVisible(true);
});
}
}
```
#### 关键点解析
- **Swing 图形库**:上述代码利用了 `javax.swing.JFrame` 和 `java.awt.Graphics2D` 来实现图形化界面[^2]。
- **抗锯齿设置**:通过 `RenderingHints` 提高绘图质量,使得曲线更加光滑。
- **心形几何结构**:由两个相交的圆形下半部以及两条直线构成完整的爱心形状[^2]。
阅读全文
相关推荐

















