Beim Lesen des Einführungstextes dachte ich: "Ist es nicht praktisch, wenn ich zwei oder mehr Rückgabewerte zurückgeben kann?" Also versuchte ich beim Überprüfen zu schreiben. Eine Notiz, um es nicht zu vergessen. (Es scheint eine Methode namens Beans and List zu geben, aber ich werde studieren ...)
Ich habe die Methode gewählt, die Werte zusammen in einer Arrayvariablen oder Klassentypvariablen zurückzugeben. Am Ende dachte ich: "Ist es nicht besser, die Anzahl der Methoden zu erhöhen und sie einzeln zurückzugeben?"
--Wenn mehrere Rückgabewerte vom gleichen Typ sind
Angesichts der Zugriffsbeschränkungen denke ich, dass die Methoden tatsächlich eingeschränkter sind.
Die Idee ist, dass Sie mehrere Rückgabewerte, die Sie zurückgeben möchten und die alle vom gleichen Typ sind, in den Basisdatentyp einfügen können. Es ist möglich, den int-Typ in den doppelten Typ zu zwingen, aber Sie möchten es nicht tun, oder? Ich dachte, also denke ich in diesem Fall nicht darüber nach.
Sub.java
public class Sub {
private int A = 100;
private int B = 200;
public int[] getAB(){
int[] array = new int[2];
array[0] = A;
array[1] = B;
return array;
}
}
Main.java
public class Main {
public static void main(String[] args){
Sub sub = new Sub();
int[] array = sub.getAB(); //Hier wird das int-Array von der Sub-Klasse zurückgegeben.
System.out.println(array[0]); //Ausgabe
System.out.println(array[1]);
}
}
Ausführungsergebnis.
100
200
Der Teil, der oben als "int []" geschrieben wurde, wurde zu "Object []". Die Idee ist, dass sogar atypische Werte zusammen gespeichert werden können, wenn es sich um ein Objekttyp-Array handelt.
Sub.java
public class Sub {
private int A = 100;
private double B = 200.0;
public Object[] getAB() {
Object[] array = new Object[2];
array[0] = A;
array[1] = B;
return array;
}
}
Main.java
public class Main {
public static void main(String[] args) {
Sub sub = new Sub();
Object[] array = sub.getAB();
System.out.println(array[0]);
System.out.println(array[1]);
}
}
Ausführungsergebnis.
100
200.0
Ist es die beste Methode, die ich in diesem Artikel geschrieben habe?
Die Idee ist, dass Sie nach der Rückgabe eines Objekts das Feld dieses Objekts mit der Hauptmethode aufrufen können. Dies ist möglich, der Nachteil ist jedoch, dass der Zugriff nicht mithilfe von Zugriffsmodifikatoren eingeschränkt werden kann.
Sub.java
public class Sub {
int circleAreaInt;
double circleAreaDouble;
public Sub calcCircleArea(int r) {
Sub sub = new Sub();
sub.circleAreaInt = 3 * r * r ;
sub.circleAreaDouble = 3.14 * r * r;
return sub;
}
}
Main.java
public class Main {
public static void main(String[] args) {
Sub sub = new Sub();
sub = sub.calcCircleArea(2);
System.out.println(sub.circleAreaInt);
System.out.println(sub.circleAreaDouble);
}
}
Ausführungsergebnis.
12
12.56
Wenn Sie den Radius "r" des Kreises als Argument (int) übergeben, die Methode, die die Fläche des Kreises sowohl mit dem Umfangsverhältnis (3) der freien Generation als auch mit dem Umfangsverhältnis (3.14) der unklaren Generation berechnet und zurückgibt. ..... aber ich konnte mir kein gutes Beispiel vorstellen. Sie müssen es nicht so schreiben.
[Easy Java 7th Edition] (https://www.amazon.co.jp/%E3%82%84%E3%81%95%E3%81%97%E3%81%84Java-%E7%AC%AC7%E7%89%88-%E3%80%8C%E3%82%84%E3%81%95%E3%81%97%E3%81%84%E3%80%8D%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E9%AB%98%E6%A9%8B-%E9%BA%BB%E5%A5%88/dp/4815600848) Pp.251
Recommended Posts