gpt4 book ai didi

java - java.awt 的 Dimension 类中的方法返回类型

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:50:42 25 4
gpt4 key购买 nike

我很惊讶地看到 heightwidth 成员的 getter 有 return 类型 double,尽管他们是 int。此外,带有双参数的setSize方法定义如下:

/**
* Sets the size of this <code>Dimension</code> object to
* the specified width and height in double precision.
* Note that if <code>width</code> or <code>height</code>
* are larger than <code>Integer.MAX_VALUE</code>, they will
* be reset to <code>Integer.MAX_VALUE</code>.
*
* @param width the new width for the <code>Dimension</code> object
* @param height the new height for the <code>Dimension</code> object
*/
public void setSize(double width, double height) {
this.width = (int) Math.ceil(width);
this.height = (int) Math.ceil(height);
}

请看Dimension类(class)。上面的评论说值不能超过 Integer.MAX_VALUE。为什么?为什么我们之间有 double?有什么微妙的原因吗?任何人都可以向我解释一下吗?对不起我的坚持!

最佳答案

java.awt.Dimension 被改造以适应 java.awt.geom 包,这样它就可以在任何 Dimension2D 是必需的。后者的接口(interface)处理 float ,因此 Dimension 也必须如此。限于 int 字段,只能表示 double 的子集。 Dimension2D.Float 也有类似的限制。

关于java - java.awt 的 Dimension 类中的方法返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9487657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com