[英]Calling parameterized constructor of super class with different datatype in java?
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
public abstract class Polygon {
private List<Double> sides;
public Polygon(List<Double> sides)
{
this.sides=sides;
}
public List<Double> getSides() {
return sides;
}
}
public class Square extends Polygon{
public Square(Double side1) {
// here i want to call super(sides). how do i convert double(side1) to list.
}
}
我想從正方形 class 調用多邊形 class 的構造函數,但是如何將雙精度轉換為列表?
注意:我無法更改任何數據類型。
您可以創建一個雙重復四次的列表:
super(Arrays.asList(side1, side1, side1, side1)); //java 8
super(List.of(side1, side1, side1, side1)); //java 9+
下面的代碼會將您的雙精度轉換為列表,該列表可用作調用構造函數的參數。
DoubleStream.of(doublesArray).boxed().collect(Collectors.toCollection(ArrayList::new));
doublesArray 是 Double 參數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.