At least, it removes some method calls :)
On 12/5/06, Oleg Khaschansky <[EMAIL PROTECTED]> wrote:
I don't think that this will make things faster - the array is cached
in the BeanInfoImpl class. Anyway, the suggested code looks better.
On 12/5/06, Mikhail Loenko <[EMAIL PROTECTED]> wrote:
> I don't understand why array is created on each iteration of the loop and
> suggest to move it up (see below). Any reason behind the current behavior?
>
> Index: modules/swing/src/main/java/common/javax/swing/TransferHandler.java
> ==========================================================
> --- modules/swing/src/main/java/common/javax/swing/TransferHandler.java
> (revision 482512)
> +++ modules/swing/src/main/java/common/javax/swing/TransferHandler.java
> (working copy)
> @@ -286,9 +286,10 @@
> beanInfo = Introspector.getBeanInfo(c.getClass());
> } catch (IntrospectionException e) {
> }
> - for (int i = 0; i < beanInfo.getPropertyDescriptors().length; i++) {
> - String name = beanInfo.getPropertyDescriptors()[i]
> - .getName();
> +
> + PropertyDescriptor[] list = beanInfo.getPropertyDescriptors();
> + for (int i = 0; i < list.length; i++) {
> + String name = list[i].getName();
> if (name.equals(propertyName)) {
> return COPY;
> }
>
--
Tony Wu
China Software Development Lab, IBM