如何添加 if else 语句来验证字符串

How to add in if else statement to validate for string

我正在使用 BlueJ 完成我的任务,但我在执行这部分问题时遇到问题,即放置决策结构以确保未设置无效数据,我已经 tried.In 我已经将 if else 语句放在 setName 部分不起作用。如果我在 setName 的 GraphicIllustrators 主要空白部分中放入 1,代码将显示错误。那么我需要在代码中的什么地方放置 if else 语句 below.BTW 我正在使用继承来做 this.So 请 advise.Thanks!

主要class的编码:

public class Publishing_Inc
    {
        private int ID=0;
        private String name="-Name Needed-";
        private int level=0;
        private String jobtitle="-Title Needed-";
        private String edit="-Edit Skill-";

public void calculateID(){
    int uniqueID;
    uniqueID =((int)( Math.random()*10000)+1);
    ID = uniqueID;
}
public int getID(){
    return ID;
}



 public void setName(String d) {
name = d;
}
public String getName() {
return name;
}
public void setTitle(String b){
    jobtitle=b;
}
public String getTitle() {
return jobtitle;
}

public void calculatelevel(){
    int uniquelevel;
    uniquelevel =((int)( Math.random()*3)+1);
    level = uniquelevel;
}
public int getlevel() {
return level;
}

public void setEdit(String z){
    edit=z;
}
public String getEdit() {
return edit;
}

}

子class:

public class GraphicIllustrators extends Publishing_Inc
{
    public void displayGraphInformation() {
System.out.println("ID: " + getID());
System.out.println("Name:" + getName());
System.out.println("Job Title: " + getTitle());
System.out.println("Level: " + getlevel());
System.out.println();
}

 public static void main (String args[]) {
 GraphicIllustrators graphic = new GraphicIllustrators ( );
graphic.calculateID ( );
graphic.setName (" Tim Cook" );
graphic.calculatelevel ();
graphic.setTitle ("Graphic Illustrators" );
graphic.displayGraphInformation( );
}

}
 public static void main (String args[]) {
      GraphicIllustrators graphic = new GraphicIllustrators ( );
      graphic.calculateID ( );

      if (input instanceof String) {
           graphic.setName ( input ); //where input comes from an input box or query or other source.
      }
      else
      {
         //alert the user.
      }
      graphic.calculatelevel ();
      graphic.setTitle ("Graphic Illustrators" );
      graphic.displayGraphInformation( );
 }

当您将不是 String 的参数传递给函数 setName 时,Java 将抛出异常。您需要将发送的对象转换为字符串。如果你想避免这种情况,你应该在发送函数 setName 之前检查输入。这将检查输入是否是对象的实例 String,如果不是则提醒用户。