gpt4 book ai didi

与整数参数一起使用时,Java Color 创建会抛出 IllegalArgumentException

转载 作者:搜寻专家 更新时间:2023-11-01 01:58:55 24 4
gpt4 key购买 nike

以下代码在我们公司的某些机器上执行时会导致抛出IllegalArgumentException:

Color sludge = new Color(133, 133, 78);
//throws IAE with message "Color parameter outside of expected range: Red Green Blue"

使用 float 参数代替的等效调用有效:

Color sludge = new Color(0.522, 0.522, 0.306); // 133/255 = 0.522, 78/255 = 0.306

为什么会这样?为什么它只会影响某些机器?

这可能与这些 Color 对象在 Spring 中是这样定义的事实有关:

<bean id="sludge" class="java.awt.Color">
<constructor-arg value="133"/>
<constructor-arg value="133"/>
<constructor-arg value="78"/>
</bean>

最佳答案

变得更迂腐:

<bean id="sludge" class="java.awt.Color">
<constructor-arg index="0" type="int"><value>133</value></constructor-arg>
<constructor-arg index="1" type="int"><value>133</value></constructor-arg>
<constructor-arg index="2" type="int"><value>78</value></constructor-arg>
</bean>

编辑

同时检查 this blog post

关于与整数参数一起使用时,Java Color 创建会抛出 IllegalArgumentException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1198551/

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