error Fragment already added when call setCurrentItem() in ViewPager

when i calling setCurrentItem() in view pager to switch between fragments, getting error Fragment already added in firs time . but after swipe view pager ,this code run correct

what is the problem?

public class AdapterViewPager extends FragmentPagerAdapter {
    private final List<Fragment> mFragmentList = new ArrayList<>();
    private final List<String> mFragmentTitleList = new ArrayList<>();

 public AdapterViewPager(FragmentManager manager) {
        super(manager);

    }

    @Override
    public Fragment getItem(int position) {

            return mFragmentList.get(position);
        }

 @Override
    public CharSequence getPageTitle(int position) {
        return mFragmentTitleList.get(position);

    }


}

In Activity

 mViewPager.setCurrentItem(2);

error

  java.lang.IllegalStateException: Fragment already added: FragmentTeacher{3a7d524 #2 id=0x7f0e00c8

android:switcher:2131624136:2} at android.support.v4.app.FragmentManagerImpl.addFragment(FragmentManager.java:1725) at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:757) at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2415) at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2200) at android.support.v4.app.FragmentManagerImpl.optimizeAndExecuteOps(FragmentManager.java:2153) at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:2034) at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:651) at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:143) at android.support.v4.view.ViewPager.populate(ViewPager.java:1239)
at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:665) at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:627) at android.support.v4.view.ViewPager.setCurrentItem(ViewPager.java:608)
at com.mojmedia.vc24.activity.ActivityHome$4.onReceive(ActivityHome.java:357) at android.support.v4.content.LocalBroadcastManager.executePendingBroadcasts(LocalBroadcastManager.java:297) at android.support.v4.content.LocalBroadcastManager.access$000(LocalBroadcastManager.java:46) at android.support.v4.content.LocalBroadcastManager$1.handleMessage(LocalBroadcastManager.java:116) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)