Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从字符串[]和int生成字符串_Java_Arrays_String_Integer - Fatal编程技术网

Java 从字符串[]和int生成字符串

Java 从字符串[]和int生成字符串,java,arrays,string,integer,Java,Arrays,String,Integer,字符串数组airlines[]包含3个字母,表示航空公司。 随机整数航空公司用于选择其中一个航空公司。随机整数应指定飞机呼号的最后3个字符 我试图获得像“BER219”、“AAL814”之类的输出,但在执行该类时,字符串调用符号仍然为null://Java按值传递变量。如果您在这个函数之外测试callsign变量的值,那么它将为null,因为您在assignCallsign方法之外将它设置为null 要解决此问题,您可以: 从函数返回callsign值并使用它设置一个变量 String cal

字符串数组airlines[]包含3个字母,表示航空公司。 随机整数航空公司用于选择其中一个航空公司。随机整数应指定飞机呼号的最后3个字符


我试图获得像“BER219”、“AAL814”之类的输出,但在执行该类时,字符串调用符号仍然为null://

Java按值传递变量。如果您在这个函数之外测试callsign变量的值,那么它将为null,因为您在assignCallsign方法之外将它设置为null

要解决此问题,您可以:

  • 从函数返回callsign值并使用它设置一个变量

    String callsign;
    String airlines[] = {"DLH","BER","TUI","EZY","ACA","AAL","FDX","SKW","ABY","SWR"};
    public void assignCallsign()
    {
        Random r = new Random();
        int airline = r.nextInt(10);
        int number = r.nextInt(900) + 100;
        callsign = airlines[airline] + number;
    }
    
  • 将callsign作为类的成员变量,代码将按预期运行:

    public String assignCallSign() {
    return airlines[airline] + number;
    }
    String callsign = assignCallSign()
    

    • 如果不查看正在使用该问题的类,则很难看到该问题

      推测这是某种“飞行”物体的一部分。这表明呼号已正确设置和显示

      private String callsign;
      
      输出

      public static void main(String[] args) {
          Flight flight = new Flight();
          flight.assignCallsign();
          System.out.println(flight);
      }
      
      private static class Flight {
          private static final String AIRLINES[] = { "DLH", "BER", "TUI", "EZY", "ACA", "AAL", "FDX", "SKW", "ABY", "SWR" };
          private String callsign;
          public void assignCallsign() {
              Random r = new Random();
              int airline = r.nextInt(10);
              int number = r.nextInt(900) + 100;
              callsign = AIRLINES[airline] + number;
          }
          @Override
          public String toString() {
              return "Flight [callsign=" + callsign + "]";
          }
      }
      

      定义执行类。我可能是指运行,德语单词翻译为“尽管执行:”)[如assignCallsign();]定义运行类。如果没有一个可运行的示例,就不可能知道问题出在哪里。只需说明一个明显的问题:您的第二个代码sniplet返回字符串,因此不是公共无效assignCallsign()
      Flight [callsign=SKW534]