在Java中用于解码Rubik多维数据集的代码是一种相对简单的算法.效率也很重要,但是次要考虑因素.
我试图在java中使用一种新颜色
Color temp = new Color(foo.getBackground());
Run Code Online (Sandbox Code Playgroud)
它一直告诉我找不到符号.
但这很有效
Color temp = (foo.getbackground());
Run Code Online (Sandbox Code Playgroud)
为什么?
我有一个jbutton,它在鼠标点击时执行一个功能.为了以编程方式执行此操作,我还有其他功能
void clickButton(){
backButton.doClick();
}
Run Code Online (Sandbox Code Playgroud)
当我运行clickButton()函数时,我可以看到在jFrame上按下了backButton但是没有发生与backButton相关联的函数.当我用鼠标点击它它的功能.我在这做错了什么?
package gui;
public class Solver {
void solveIt(){
CubeGui.moveThat();
}
}
Run Code Online (Sandbox Code Playgroud)
我试图从这个类访问方法moveThat,但它一直告诉我无法从静态引用访问非静态方法moveThat.我不知道这是一个静态参考?
我的摇摆界面中有以下按钮
private void solveButtonMouseClicked(java.awt.event.MouseEvent evt) {
step1();
}
Run Code Online (Sandbox Code Playgroud)
它调用step1();
private void step1(){
//step 1 solving the white cross around the yellow middle
while( (!(F2.getBackground().equals(white))) & (!(F4.getBackground().equals(white))) & (!(F6.getBackground().equals(white))) & (!(F8.getBackground().equals(white)))){
textArea.append("cnt");
//top three pieces solved
if(F2.getBackground().equals(white) && F4.getBackground().equals(white) && F6.getBackground().equals(white)){
//solve F8
while(!(F8.getBackground().equals(white))){
//check right side
if(R2.getBackground().equals(white)){right(); right(); downinv(); rightinv(); rightinv();}
else if(R4.getBackground().equals(white)){rightinv(); downinv(); right();}
else if(R6.getBackground().equals(white)){right(); downinv(); rightinv();}
else if(R8.getBackground().equals(white)){downinv();}
//check left side
else if(L2.getBackground().equals(white)){left(); left(); down(); leftinv(); leftinv();}
else if(L4.getBackground().equals(white)){leftinv(); down(); left();}
else if(L6.getBackground().equals(white)){left(); down(); leftinv();}
else if(L8.getBackground().equals(white)){down();} …Run Code Online (Sandbox Code Playgroud) java ×6
algorithm ×1
awt ×1
colors ×1
constructor ×1
mouse ×1
rubiks-cube ×1
static ×1
swing ×1
while-loop ×1