2017-03-15 2 views
0

Ce programme renvoie tous les synonymes pour une entrée donnée. Mais ce code est pour Java 1.8. Comment faire pour convertir ce code pour Java 1.6.Expression lambda Java 1.8 code à Java 1.6

model.listIndividuals().forEachRemaining(ind -> { 

if(((Resource)ind).getLocalName().toString().equalsIgnoreCase(input)){    
System.out.println("Synonyms of " + ((Resource)ind).getLocalName().toString() + " are:");    
      ind.listPropertyValues(isSynonymOf).forEachRemaining(val -> {     
    System.out.println(" * " + ((Resource) val).getLocalName().toString()); 

      }); 
     } 
    }); 
+0

Non trivialement. Premièrement, Java 1.6 (et 1.7) sont en fin de vie; pourquoi devez-vous l'utiliser? Deuxièmement, [scala 2.11.1] (http://www.scala-lang.org/news/2.11.1) fonctionne sur Java 6; et possède des lambdas (mais une syntaxe légèrement différente). –

+0

@Elliott Frisch en fait il est contraignant que je dois utiliser Java 1.6. Je ne sais pas comment convertir le code ci-dessus (réécriture) pour Java 1.6 – Tolga

+1

['Iterator.forEachRemaining (java.util.function.Consumer)'] (https://docs.oracle.com/javase/8/docs/api /java/util/Iterator.html#forEachRemaining-java.util.function.Consumer-) Javadoc dit (en partie) * L'implémentation par défaut se comporte comme suit: 'while (hasNext()) action.accept (next()); '* (que vous pourriez implémenter en Java 1.6), ou vous pourriez utiliser scala. Je ne vais pas convertir cela pour vous parce que SO n'est pas un service d'écriture de code, je suis sur le point d'aller au lit, et je ne peux pas le tester. –

Répondre

3

Essayez ceci:

Iterator<Individual> iterInd = model.listIndividuals(); 
while (iterInd.hasNext()) { 
    Individual ind = iterInd.next(); 
    if (ind.getLocalName().equalsIgnoreCase(input)) { 
     System.out.println("Synonyms of " + ind.getLocalName() + " are:"); 
     NodeIterator iterVal = ind.listPropertyValues(isSynonymOf); 
     while (iterVal.hasNext()) { 
      System.out.println(" * " + iterVal.next().getLocalName()); 
     } 
    } 
} 
+0

Voulez-vous voir ma nouvelle question? Je vous remercie – Tolga