in Eclipse (3.4+ vers le haut), je recherchais un raccourci qui convertit le bloc Comment puis-je faire cela? P> si {} {} {} {} code> bloc de condition à l'opérateur ternaire Java strong> (ou le < fort> ?: strong> opérateur). P>
3 Réponses :
Il n'y a pas de tel raccourci. Refactoring les déclarations em> dans expressions em> n'est pas un processus trivial et n'est pas toujours possible de commencer. Le processus serait trop compliqué pour être automatisé. P>
qui dit, ctrl kbd> + shift kbd> + l kbd> listera tous em> raccourcis Eclipse. P>
Questions connexes h3>
Merci de réponse, mais ne serait-il pas possible si la mission n'est effectuée qu'une seule fois? Par configuration de modèle Eclipse ou autre chose?
@Narayan: Consultez cette sortie: IDEONE.COM/66SRI ; Les règles pour faire ce refactoring automatique devraient être très compliquées.
Ok, je prends ton point.; mais chaque fois que j'ai besoin de vérifier quelque chose d'aussi simple comme ce ideone.com/p0gc1 , je ressens le besoin de cela , comme sélectionnez l'expression et appuyez sur cette touche magique =]
@Narayan: Comme je l'ai dit dans le commentaire à la question, je serais heureux de voir cela mis en œuvre à Eclipse. Cela peut être fait bien sûr, je ne pense tout simplement pas que ce soit aussi facile.
Eh bien, vous pouvez ajouter un modèle à Eclipse comme ceci: nommez quelque chose comme (pas sûr si c'est ce que vous voulez) em> p> p> p> TERN code> et vous pouvez l'avoir auto-créer l'opérateur ternaire pour vous. p>
Je pense qu'ils cherchent à mettre en évidence un bloc existant si / sinon et qu'il convertit automatiquement à une déclaration ternaire
@RUL, je sais. Mais c'est le plus proche qui soit facilement possible.
Eh bien, je l'ai donné +1 parce que je l'ai ajouté à ma copie de Eclipse :)
@Jinguy, +1 pour le modèle mais le modèle génère quelque chose comme condition? Positif: négatif; code> n'est pas beaucoup utile = [
Excusez-moi si cela n'est plus pertinent. P>
J'ai écrit un plug-in éclipse qui fait exactement ceci: p>
http://marketplace.eclipse.org/content/spaparttan-Refactoring < / p>
N'hésitez pas à rapporter si vous avez des problèmes d'installation ou d'utilisation de ce plug-in. P>
EDIT STRT>: La version réécrite d'autres développeurs est disponible sur https://marketplace.eclipse.org/content/spaparttan-sfactoring-0 P>
@Narayan je suppose que vous savez comment installer des addons via des sites de mise à jour. Le site de mise à jour du plug-in: update.nihamkin.com/spartan une fois installé, vous aurez un nouveau sous-menu Sous le menu "Refactor" intitulé "Spartanisation". Si vous avez sélectionné du texte, le refactoring sera effectué sur le texte sélectionné. Si vous n'avez pas de texte sélectionné, le refactoring sera effectué sur l'ensemble du projet.
Je l'ai installé, maintenant quand je goto le menu refacteur -> Spartanization-> Convertissez la condition en ternaire, il ne fait pas le travail, il est indiqué que le refactoring ne modifie pas de code source. Le code est le même que celui présent dans l'onglet Screenshot, ce qui pourrait être faux?
@Narayan 1) Quelle version Eclipse avez-vous? 2) Que se passe-t-il si vous sélectionnez tout le texte dans le fichier, puis essayez de faire le refactoring?
Version: Libération de service Helios 1, je les ai tous sélectionnés et essayez le refactoring comme mentionné!
@Narayan Désolé, il semble que je ne puisse pas reproduire votre problème. Cela fonctionne bien avec les Helios Eclipse J'ai téléchargé. i.imgur.com/zumtvkl.png
@Artium, j'ai installé le plugin (Eclipse matsr1) et il trouvera des correspondances lorsque je sélectionne tout le code Java dans un fichier et trouvera pour l'ensemble du projet si je ne sélectionne rien .. Mais lorsque je sélectionne le bloc suivant , il est dit "Le refactoring ne change pas de code source" si (couleur == null) {couleur = myObject.getcolor (); } Je m'attendais à ce qu'il réponde avec ... Couleur = (couleur == null)? myObject.getcolor (): couleur;
@Rogodeter En effet, il s'agit d'un cas que le plugin ne traite pas. Le problème ici est le manque de déclaration d'autre. Je pourrais le réparer le week-end, postera une mise à jour ici.
@Rogodeter Une nouvelle version est disponible par d'autres développeurs. Vous voudrez peut-être essayer. Il est situé dans un site de mise à jour différent: Marketplace.eclipse.org/Content/SPartan-Factoring -0
@narayan Une nouvelle version est disponible par d'autres développeurs. Vous voudrez peut-être essayer. Il est situé dans un site de mise à jour différent: Marketplace.eclipse.org/Content/SPartan-Factoring -0
@Artium merci! je vais vérifier cela!
Je le veux dans l'inverse - les expressions ternaires deviennent trop illisibles