Java 我的这段代码没有错误,但没有显示任何输出
在这段代码中,方法setEid不起作用。我不知道while循环有什么问题 我的这段代码没有错误,但没有显示任何输出Java 我的这段代码没有错误,但没有显示任何输出,java,Java,在这段代码中,方法setEid不起作用。我不知道while循环有什么问题 我的这段代码没有错误,但没有显示任何输出 public class Emp { private String eid; public String getEid() { return eid; } public void setEid(String e) { while (e.length() < 12) { eid =
public class Emp {
private String eid;
public String getEid() {
return eid;
}
public void setEid(String e) {
while (e.length() < 12) {
eid = e;
}
}
}
public class Test {
public static void main(String[] args) {
Emp z = new Emp();
z.setEid("rgrge");
System.out.println("\n" + z.getEid());
}
}
公共级电磁脉冲{
私有字符串eid;
公共字符串getEid(){
返回eid;
}
公共void setEid(字符串e){
而(e.长度()<12){
eid=e;
}
}
}
公开课考试{
公共静态void main(字符串[]args){
Emp z=新的Emp();
z、 setEid(“rgrge”);
System.out.println(“\n”+z.getEid());
}
}
在此处输入代码我希望setEid参数的静态初始化不应超过12个字符您的setter方法有一个while循环如果eid长度小于12,那么它总是卡在这个方法中
public void setEid(String e){
while(e.length()<12)
eid=e;
}
您在setter中传递“rgrge”
,其长度小于12。这就是为什么你的程序卡在循环中,没有显示任何东西
将setter实现更改为此
public void setEid(String e){
if(e.length()<12) // change while to if
eid=e;
}
public void setEid(字符串e){
如果(e.length()那么首先应该有if
而不是while
更改:
while(e.length()欢迎使用堆栈溢出!看起来您可能需要学习使用调试器。请自行解决一些问题。如果您以后仍有问题,请将您的问题更具体地说明您需要什么帮助。这一行while(e.length()的目的是什么
public void setEid(String e){
if(e.length()<12) // change while to if
eid=e;
}