Tipo no coincidente: no se puede convertir de entero a booleano
public boolean clearSelection() { int i = 0; if (!this.m_SelectedComps.isEmpty()) { i = 1; Iterator localIterator = this.m_SelectedComps.iterator(); while (localIterator.hasNext()) ((AnnotComponent) localIterator.next()).remove(); this.m_SelectedComps.clear(); } return i; }
Cómo convertir el entero en booleano?
- Android: Picasso no carga algunas imágenes
- Llamar a un método no estático fuera de la clase
- NoClassDefFoundError al ejecutar el ejemplo oficial de Facebook
- Uso de Intents para transmitir datos de tonos de llamada
- Actividad se ha filtrado ventana com.android.internal.policy.impl.PhoneWindow$DecorView@46029dd0
- Cómo utilizar Leak Canary
- Disposición de restricción beta 4 - los fragmentos no funcionan
- Android: Obtener Emoji desde EmojiconEditText
- Sincronización de dos ListViews lado a lado de Android
- Cómo extender la actividad de dos clases de Android?
- Android Studio 1.2.2, construir con éxito, pero no apk en la construcción / salida?
- ¿Cómo usar com.android.databinding en el módulo (estudio de Android)?
- Construir un proyecto con Ant que incluye ActionbarSherlock como un proyecto de biblioteca
Intente usar este retorno
return i == 1;
O simplemente usar un booleano para comenzar (con un nombre mejor):
public boolean clearSelection() { boolean flag = false; if (!this.m_SelectedComps.isEmpty()) { flag = true; Iterator localIterator = this.m_SelectedComps.iterator(); while (localIterator.hasNext()) ((AnnotComponent)localIterator.next()).remove(); this.m_SelectedComps.clear(); } return flag; }
Sigue desconcertándome por qué la gente usa i
– un nombre de variable horrible. Parece 1
y no transmite ningún significado.
Puede ser que sólo puede modificar su declaración de devolución sin mucho cambio de código como se indica a continuación:
return i > 0 ? true : false ;
Sé que este hilo es viejo, pero quería añadir algún código que me ayudó y podría ayudar a otros a buscar esto …
Puede usar org.apache.commons.lang api para convertir un int en booleano usando la clase BooleanUtils:
BooleanUtils.toBoolean(int value)
"Convierte un int en un booleano utilizando la convención de que cero es falso." (Javadocs)
Aquí están las dependencias de Maven y Gradle, sólo asegúrate de comprobar que estás usando la última versión en el enlace http://mvnrepository.com/artifact/org.apache.commons/commons-lang3
Maven Dependencia:
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> </dependency>
Gradle Dependencia:
'org.apache.commons:commons-lang3:3.4'
Declare i como un booleano:
public boolean clearSelection() { boolean i = false; if (!this.m_SelectedComps.isEmpty()) { i = true; Iterator localIterator = this.m_SelectedComps.iterator(); while (localIterator.hasNext()) ((AnnotComponent)localIterator.next()).remove(); this.m_SelectedComps.clear(); } return i; }
Convertir int en booleano:
return i > 0;
public boolean clearSelection(){ int i = 0; if (!this.m_SelectedComps.isEmpty()) { i = 1; Iterator localIterator = this.m_SelectedComps.iterator(); while (localIterator.hasNext()) ((AnnotComponent)localIterator.next()).remove(); this.m_SelectedComps.clear(); } return (i!=0); }