import java.applet.Applet;
import java.awt.Event;
import java.awt.Graphics;
import java.awt.Label;
import java.awt.TextField;public class SeparateNum extends Applet{
Label lab; //定义一个标签
TextField tf; //定义一个文本
String s;
public void init(){ //初始方法
lab=new Label("输入一个人人任意长度的整数");
tf=new TextField(19);
add(lab); //添加一个
add(tf); //再来一个
}
public boolean action(Event e,Object o){ //事件监听器
if(e.target==tf){
long num=Long.parseLong(tf.getText()); //取出写入的数字
s=String.valueOf(num);
}
repaint();
return true;
}
public void paint(Graphics g){
int x=15,y=15;
for(int i=0;i<s.length();i++){
g.drawString(s.charAt(i)+"", x, y);
x+=10;
}
}
}这是一个拆数字的算法,谁能给我分析下错误,谢谢了
import java.awt.Event;
import java.awt.Graphics;
import java.awt.Label;
import java.awt.TextField;public class SeparateNum extends Applet{
Label lab; //定义一个标签
TextField tf; //定义一个文本
String s;
public void init(){ //初始方法
lab=new Label("输入一个人人任意长度的整数");
tf=new TextField(19);
add(lab); //添加一个
add(tf); //再来一个
}
public boolean action(Event e,Object o){ //事件监听器
if(e.target==tf){
long num=Long.parseLong(tf.getText()); //取出写入的数字
s=String.valueOf(num);
}
repaint();
return true;
}
public void paint(Graphics g){
int x=15,y=15;
for(int i=0;i<s.length();i++){
g.drawString(s.charAt(i)+"", x, y);
x+=10;
}
}
}这是一个拆数字的算法,谁能给我分析下错误,谢谢了
int x=15,y=15;
for(int i=0;s != null && i<s.length();i++){
g.drawString(s.charAt(i)+"", x, y);
x+=10;
}
}s没有初始化