From 4ca90b89a342a6b2422c252dd23d970634b54680 Mon Sep 17 00:00:00 2001 From: Michael Keppler Date: Wed, 17 Jul 2019 20:16:14 +0200 Subject: Simplify collection.toArray() calls On recent VMs, collection.toArray(new T[0]) is faster than collection.toArray(new T[collection.size()]). Since it is also more readable, it should now be the preferred way of collection to array conversion. https://shipilev.net/blog/2016/arrays-wisdom-ancients/ Regex used for search: (?s)\Q.toArray(\E\s*new\s+\w+\Q[\E(?!0) Change-Id: Ifa2f498d97209a01cdb219c79ced20660af91886 Signed-off-by: Michael Keppler --- org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIUtils.java | 6 ++---- .../org/eclipse/egit/ui/internal/actions/CommitActionHandler.java | 3 +-- .../egit/ui/internal/clone/RepositoryLocationContentProvider.java | 6 ++---- .../org/eclipse/egit/ui/internal/commit/DiffRegionFormatter.java | 4 ++-- .../src/org/eclipse/egit/ui/internal/commit/DiffViewer.java | 2 +- .../src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java | 3 +-- .../src/org/eclipse/egit/ui/internal/dialogs/CommitCombo.java | 2 +- .../src/org/eclipse/egit/ui/internal/history/FileDiff.java | 4 ++-- .../src/org/eclipse/egit/ui/internal/history/FindResults.java | 2 +- .../egit/ui/internal/preferences/SynchronizePreferencePage.java | 2 +- .../src/org/eclipse/egit/ui/internal/pull/PullOperationUI.java | 3 +-- .../src/org/eclipse/egit/ui/internal/rebase/RebaseResultDialog.java | 3 +-- .../src/org/eclipse/egit/ui/internal/sharing/SharingWizard.java | 3 +-- .../eclipse/egit/ui/internal/synchronize/GitSynchronizeWizard.java | 3 +-- .../egit/ui/internal/synchronize/model/GitModelRepository.java | 2 +- 15 files changed, 19 insertions(+), 29 deletions(-) (limited to 'org.eclipse.egit.ui') diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIUtils.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIUtils.java index 89922c017d..0cdd39750b 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIUtils.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIUtils.java @@ -445,8 +445,7 @@ public class UIUtils { resultList.add(propsal); } } - return resultList.toArray(new IContentProposal[resultList - .size()]); + return resultList.toArray(new IContentProposal[0]); } }; @@ -597,8 +596,7 @@ public class UIUtils { resultList.add(proposal); } } - return resultList.toArray(new IContentProposal[resultList - .size()]); + return resultList.toArray(new IContentProposal[0]); } }; diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/CommitActionHandler.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/CommitActionHandler.java index 78c1f11fb7..166b5c68d2 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/CommitActionHandler.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/CommitActionHandler.java @@ -151,8 +151,7 @@ public class CommitActionHandler extends RepositoryActionHandler { result[0] = new IndexDiffData( CommitUI.getIndexDiff(repository, projects.toArray( - new IProject[projects - .size()]), + new IProject[0]), monitor)); } catch (IOException e) { throw new InvocationTargetException(e); diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/clone/RepositoryLocationContentProvider.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/clone/RepositoryLocationContentProvider.java index 17fbdaf0f3..f589afbeb6 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/clone/RepositoryLocationContentProvider.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/clone/RepositoryLocationContentProvider.java @@ -57,8 +57,7 @@ class RepositoryLocationContentProvider implements ITreeContentProvider { @SuppressWarnings("unchecked") public Object[] getElements(Object inputElement) { List repositoryImports = (List) inputElement; - return repositoryImports.toArray(new CloneSourceProvider[repositoryImports - .size()]); + return repositoryImports.toArray(new CloneSourceProvider[0]); } @Override @@ -76,8 +75,7 @@ class RepositoryLocationContentProvider implements ITreeContentProvider { return null; cacheParents(repositoryImport, repositoryServerInfos); return repositoryServerInfos - .toArray(new RepositoryServerInfo[repositoryServerInfos - .size()]); + .toArray(new RepositoryServerInfo[0]); } return null; } diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffRegionFormatter.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffRegionFormatter.java index 84a331ac5d..0631ed12e2 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffRegionFormatter.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffRegionFormatter.java @@ -322,7 +322,7 @@ public class DiffRegionFormatter extends DiffFormatter { * @return non-null but possibly empty array */ public DiffRegion[] getRegions() { - return this.regions.toArray(new DiffRegion[this.regions.size()]); + return this.regions.toArray(new DiffRegion[0]); } /** @@ -332,7 +332,7 @@ public class DiffRegionFormatter extends DiffFormatter { */ public FileDiffRegion[] getFileRegions() { return this.fileRegions - .toArray(new FileDiffRegion[this.fileRegions.size()]); + .toArray(new FileDiffRegion[0]); } /** diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffViewer.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffViewer.java index fce1d12926..acdb797558 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffViewer.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/DiffViewer.java @@ -169,7 +169,7 @@ public class DiffViewer extends HyperlinkSourceViewer { Assert.isTrue(sourceViewer instanceof DiffViewer); DiffViewer viewer = (DiffViewer) sourceViewer; return viewer.tokens.keySet() - .toArray(new String[viewer.tokens.size()]); + .toArray(new String[0]); } @Override diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java index 8cd37fff5c..5fd6f52064 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java @@ -207,8 +207,7 @@ public class RepositoryCommit extends WorkbenchAdapter if (note != null) noteList.add(new RepositoryCommitNote(this, ref, note)); } - notes = noteList.toArray(new RepositoryCommitNote[noteList - .size()]); + notes = noteList.toArray(new RepositoryCommitNote[0]); } catch (Exception e) { Activator.logError("Error showing notes", e); //$NON-NLS-1$ notes = new RepositoryCommitNote[0]; diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitCombo.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitCombo.java index a14d3c6914..1615b2f963 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitCombo.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitCombo.java @@ -75,7 +75,7 @@ public class CommitCombo extends Composite { list.add(makeContentProposal(message)); } } - return list.toArray(new IContentProposal[] {}); + return list.toArray(new IContentProposal[0]); } /* diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FileDiff.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FileDiff.java index 3bbd68d54e..0f96fe36d6 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FileDiff.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FileDiff.java @@ -418,7 +418,7 @@ public class FileDiff { objectIds.add(diffEntry.getOldId().toObjectId()); if (diffEntry.getNewId() != null) objectIds.add(diffEntry.getNewId().toObjectId()); - return objectIds.toArray(new ObjectId[]{}); + return objectIds.toArray(new ObjectId[0]); } /** @@ -432,7 +432,7 @@ public class FileDiff { modes.add(diffEntry.getOldMode()); if (diffEntry.getOldMode() != null) modes.add(diffEntry.getOldMode()); - return modes.toArray(new FileMode[]{}); + return modes.toArray(new FileMode[0]); } /** diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FindResults.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FindResults.java index 3b49dfc181..518ccd3657 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FindResults.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/FindResults.java @@ -225,7 +225,7 @@ public class FindResults { private Integer[] getkeysArray() { if (keysArray == null) { keysArray = matchesMap.keySet().toArray( - new Integer[matchesMap.size()]); + new Integer[0]); } return keysArray; diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/SynchronizePreferencePage.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/SynchronizePreferencePage.java index e0e3a7ab62..3816d7b207 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/SynchronizePreferencePage.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/SynchronizePreferencePage.java @@ -114,7 +114,7 @@ public class SynchronizePreferencePage extends FieldEditorPreferencePage strategies.add(new String[] { strategy.getLabel(), strategy.getName() }); } - return strategies.toArray(new String[strategies.size()][2]); + return strategies.toArray(new String[0][0]); } private ScopedPreferenceStore getCorePreferenceStore() { diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/pull/PullOperationUI.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/pull/PullOperationUI.java index 6bd1de6cf4..506bfc4065 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/pull/PullOperationUI.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/pull/PullOperationUI.java @@ -80,8 +80,7 @@ public class PullOperationUI extends JobChangeAdapter { * @param repositories */ public PullOperationUI(Set repositories) { - this.repositories = repositories.toArray(new Repository[repositories - .size()]); + this.repositories = repositories.toArray(new Repository[0]); int timeout = Activator.getDefault().getPreferenceStore().getInt( UIPreferences.REMOTE_CONNECTION_TIMEOUT); pullOperation = new PullOperation(repositories, timeout); diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/rebase/RebaseResultDialog.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/rebase/RebaseResultDialog.java index 555899bfba..94726e8ddb 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/rebase/RebaseResultDialog.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/rebase/RebaseResultDialog.java @@ -569,8 +569,7 @@ public class RebaseResultDialog extends MessageDialog { IPath location = repoWorkdirPath.append(repoPath); locationList.add(location); } - IPath[] locations = locationList.toArray(new IPath[locationList - .size()]); + IPath[] locations = locationList.toArray(new IPath[0]); int mergeMode = Activator.getDefault().getPreferenceStore() .getInt(UIPreferences.MERGE_MODE); CompareEditorInput input; diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/sharing/SharingWizard.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/sharing/SharingWizard.java index 3fcbbe17d3..e2f79026d4 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/sharing/SharingWizard.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/sharing/SharingWizard.java @@ -207,8 +207,7 @@ public class SharingWizard extends Wizard implements IConfigurationWizard, @Override public void run() { activePage.closeEditors( - editorRefsToClose.toArray( - new IEditorReference[editorRefsToClose.size()]), + editorRefsToClose.toArray(new IEditorReference[0]), true); } }); diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/GitSynchronizeWizard.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/GitSynchronizeWizard.java index 856b1a6a73..d386626de2 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/GitSynchronizeWizard.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/GitSynchronizeWizard.java @@ -83,8 +83,7 @@ public class GitSynchronizeWizard extends Wizard { Set selectedProjects = page.getSelectedProjects(); GitModelSynchronize.launch(gsdSet, selectedProjects - .toArray(new IResource[selectedProjects - .size()])); + .toArray(new IResource[0])); return true; } diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/model/GitModelRepository.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/model/GitModelRepository.java index 1f27a5b057..801aa10527 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/model/GitModelRepository.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/synchronize/model/GitModelRepository.java @@ -90,7 +90,7 @@ public class GitModelRepository extends GitModelObjectContainer implements HasPr @Override public IProject[] getProjects() { - return gsd.getProjects().toArray(new IProject[gsd.getProjects().size()]); + return gsd.getProjects().toArray(new IProject[0]); } @Override -- cgit v1.2.3