所以我想做一个单一的迷宫(没有发电机)在Java,我遇到了一个路障。我有的当前代码将制作一个迷宫,并制作一个jframe,但它不会给它着色...有办法让着色工作吗??
import java.awt.*;
import javax.swing.*;
import java.lang.*;
public class ayy{
public static void main(String [] args){
JFrame frame = new JFrame("Maze");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setSize(1000,1000);
frame.setVisible(true);
int width = 1;
int height = 1;
int [][] map= {
{0,0,0,0,0,0,0,0,0,0,},
{0,0,0,0,0,0,0,0,0,0,},
{2,1,1,1,0,0,0,0,0,0,},
{0,0,0,1,0,0,0,1,1,2,},
{0,0,0,1,0,0,0,1,0,0,},
{0,0,0,1,0,0,0,1,0,0,},
{0,0,0,1,1,1,1,1,0,0,},
{0,0,0,0,0,0,0,0,0,0,},
{0,0,0,0,0,0,0,0,0,0,},
{0,0,0,0,0,0,0,0,0,0,}
};
for(int i=0;i<map.length;i++){
for(int j=0;j<map.length;j++){
switch(map[i][j]){
case 0:
class rectangle{
public void paint(Graphics g){
g.drawRect(1,1,1,1);
g.setColor(Color.red);
}
}
break;
case 1:
class rectangle2{
public void paint(Graphics g){
g.drawRect(1,1,1,1);
g.setColor(Color.yellow);
}
} break;
case 2:
class rectangle3{
public void paint(Graphics g){
g.drawRect(1,1,1,1);
g.setColor(Color.blue);
}
} break;
}
}
}
}
}
任何帮助都可以,谢谢!
1-)不要在开关情况下创建类,这不是一个好做法。
2-)如果类没有继承JComponent,那么它将无法覆盖油漆或油漆组件方法,因为它没有它们。
3-)将类名的首字母大写,并使用有意义的名称。
4-)按如下方式修改代码:
public class MazeApp extends JFrame {
public static void main(String[] args) {
JFrame frame = new JFrame("Maze");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setSize(1000, 1000);
Maze brd = new Maze();
frame.add(brd);
frame.setVisible(true);
}
}
class Maze extends JPanel {
public Maze() {
}
protected void paintComponent(Graphics g) {
int width = 1;
int height = 1;
int[][] map = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
{ 2, 1, 1, 1, 0, 0, 0, 0, 0, 0, },
{ 0, 0, 0, 1, 0, 0, 0, 1, 1, 2, },
{ 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, },
{ 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, },
{ 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, },
{ 0, 0, 2, 0, 0, 2, 0, 0, 2, 0, },
{ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, },
{ 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, } };
for (int i = 0; i < map.length; i++) {
for (int j = 0; j < map.length; j++) {
int factori = i * 50;
int factorj = j * 50;
switch (map[i][j]) {
case 0: {
g.setColor(Color.red);
g.fillRect(factori, factorj, 2, 2);
}
break;
case 1: {
g.setColor(Color.yellow);
g.fillRect(factori, factorj, 2, 2);
}
break;
case 2: {
g.setColor(Color.blue);
g.fillRect(factori, factorj, 2, 2);
}
break;
}
}
}
}
}
问题内容: 使用这样的地理数据记录: 我想输出类似这样的内容,其中它以矩阵形式显示START / END配对: 我可以看到如何以及将如何找到数据,但是我对如何显示为矩阵一无所知。有人有什么想法吗? 问题答案: 这似乎可以解决问题,并在PostgreSQL 9.1上进行了测试。几乎肯定会需要对它进行调整以使其适合SQL Server(任何人都可以随时更新我对此的回答)。 但是请注意,我的输出与您的输
问题内容: 我目前正在将数据读入如下所示的数据框中。 我想根据此数据创建一个欧几里得距离矩阵,该矩阵显示所有城市对之间的距离,因此我得到一个结果矩阵,如下所示: 我的实际数据框中还有更多城市和坐标,因此我需要能够以某种方式遍历所有城市对并创建一个距离矩阵,就像上面显示的那样,但是我不确定如何配对所有城市一起引用并应用欧几里德距离公式?任何帮助,将不胜感激。 问题答案: 我认为您对distance_
null 下面是构造函数: 问题:当试图为特定的行/行添加值时,我在下面的方法中得到以下错误:未为Integer类型定义方法add(int)
本文向大家介绍如何使用HTML5创建转换矩阵?,包括了如何使用HTML5创建转换矩阵?的使用技巧和注意事项,需要的朋友参考一下 HTML5 canvas提供了允许直接修改转换矩阵的方法。转换矩阵最初必须是身份转换。然后可以使用转换方法对其进行调整。 S号 方法和说明 1 变换(m11,m12,m21,m22,dx,dy) 此方法更改转换矩阵以应用参数指定的矩阵。 2 setTransform(m1
本文向大家介绍Python中矩阵创建和矩阵运算方法,包括了Python中矩阵创建和矩阵运算方法的使用技巧和注意事项,需要的朋友参考一下 矩阵创建 1、from numpyimport *; a1=array([1,2,3]) a2=mat(a1) 矩阵与方块列表的区别如下: 2、data2=mat(ones((2,4))) 创建一个2*4的1矩阵,默认是浮点型的数据,如果需要时int类型,可以使用