Java の関数から何も返さない
    
    
            Mohammad Irfan
    2023年10月12日
    
    Java
    Java Function
    
 
このチュートリアルでは、Java の関数で何も返さない方法を紹介します。
シグニチャに戻り型が含まれるすべての関数は、同じ型の値を返す必要があります。そうしないと、コンパイルでエラーが発生し、コードが実行されません。これは、戻り値が呼び出し元の関数に返される値であることを意味します。何も返さない場合は、デフォルト値を返す必要があります。
たとえば、このような状況を処理するために、文字列型の場合は null を返し、整数値の場合は 0 を返すことができます。いくつかの例で理解しましょう。
Java の整数関数で何も返さない
この例では、整数を返す静的メソッドがありますが、特別な場合には何も返さないようにしたいので、0 のみを返します。返す整数はありませんが、目的を達成するためにこれを行うことができます。
以下の例を参照してください。
public class SimpleTesting {
  public static void main(String[] args) {
    int result = getMax(12, 12);
    System.out.println(result);
  }
  public static int getMax(int a, int b) {
    if (a > b) {
      return a;
    } else if (b > a) {
      return b;
    }
    return 0; // similar to nothing in int
  }
}
出力:
0
Java の文字列関数で何も返さない
この例では、文字列を返す静的メソッドがありますが、特別な場合には何も返さないようにし、null のみを返します。String には何も返すものはありませんが、目的を達成することはできます。
以下の例を参照してください。
public class SimpleTesting {
  public static void main(String[] args) {
    String result = getMax("rohan", "sohan");
    System.out.println("result " + result);
    result = getMax("sohan", "sohan");
    System.out.println("result " + result);
  }
  public static String getMax(String a, String b) {
    if (a.compareTo(b) > 0) {
      return a;
    } else if (a.compareTo(b) < 0) {
      return b;
    }
    return null; // similar to nothing in String
  }
}
出力:
result sohan
result null
Java のオブジェクト関数で何も返さない
この例では、整数オブジェクトを返す静的メソッドがありますが、特別な場合には何も返さないようにし、null は Java のオブジェクトのデフォルト値であるため、null のみを返します。返されるオブジェクトには何もありませんが、目的を達成することができます。
これは他のオブジェクトにも使用できます。以下の例を参照してください。
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class SimpleTesting {
  public static void main(String[] args) {
    List<Integer> list = new ArrayList<>();
    list.add(23);
    list.add(32);
    list.add(33);
    System.out.println(list);
    Integer result = getMax(list);
    System.out.println("result " + result);
  }
  public static Integer getMax(List<Integer> list) {
    if (Collections.max(list) > 100) {
      return 100;
    } else if (Collections.max(list) < 50) {
      return Collections.max(list);
    }
    return null; // similar to nothing in Integer object
  }
}
出力:
[23, 32, 33]
result 33
        チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe