Can eclipse autocomplete on the left side of assig

2020-07-18 03:23发布

问题:

If I have typed out an expression that returns a known type, is there a way for eclipse to content-assist the creation of that type, potentially with templated variable names?

The screenshot below is an example of where this would be useful. You'll notice that if I hover my mouse over the getModel() method, it clearly states that it can only return a single type of Map<String, Object>. But if I then type Ctrl-Space with my cursor to the left of the =, nothing happens. Preferably, it would create the whole Map<String, Object> model that you see commented out, with model being templated so you could tab to it, and quickly enter your variable name.

I suppose it's even possible that it could infer the default variable name based on the getter method name...

回答1:

You could probably use the extract variable refactoring for this use case.

First type

mv.getModel()

Then go to Refactor/Extract Local Variable or just hit SHIFT+ALT+L.

It will then prompt you for variable name and after you hit enter you should get:

Map<String, Object> variableName = mv.getModel();

I know that the question is about content assist, but as far as I know it isn't possible to do this that way. Hopefully this is an acceptable alternative. If someone knows a better solution feel free to correct me.



回答2:

The shortcut for Mac: 2 + l (lowercase L key) See: https://stackoverflow.com/a/36367780/6192949