此代码应在输入对话框中接收全名字符串示例"Billy Bob Smith",并在消息对话框中将首字母输出为字母组合示例"BBS".但由于某种原因,main方法不允许我访问fullName变量.
import javax.swing.*;
public class HardMonogram {
//---------- ATTRIBUTES ----------//
private String fullName;
private String monogram;
private String first;
private String middle;
private String last;
//---------- METHODS ----------//
public String getInitial(String seperateName) {
return seperateName.substring(0, 1);
}
public void getSeperateName(String fullName) {
first = fullName.substring(0, fullName.indexOf(" "));
middle = fullName.substring(fullName.indexOf(" ") + 1, fullName.length());
last = middle.substring(middle.indexOf(" ") + 1, middle.length());
middle = middle.substring(0, middle.indexOf(" "));
}
public void setMonogram() {
monogram = getInitial(first) +
getInitial(middle) +
getInitial(last); …Run Code Online (Sandbox Code Playgroud) 这段代码构建正确,一切似乎都有效,但键无效.我认为它是动作监听器或椭圆形不更新.我正在尝试通过初学者java游戏编程.我相信这很容易,但我没有抓住它.如果这有所不同,我在sublime text 2中使用mac.
package javagame;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JavaGame extends JFrame {
int x, y;
public class AL extends KeyAdapter {
public void keyPressed(KeyEvent e) {
int keycode = e.getKeyCode();
if(keycode == e.VK_LEFT); {
x-= 3;
}
if(keycode == e.VK_RIGHT); {
x+= 3;
}
if(keycode == e.VK_UP); {
y-= 3;
}
if(keycode == e.VK_DOWN); {
y+= 3;
}
}
public void keyReleased(KeyEvent e) {
}
}
public JavaGame() {
addKeyListener(new AL());
setTitle("Jave Game");
setSize(700, 700); …Run Code Online (Sandbox Code Playgroud)