Fragmento recriado no item de exibição de navegação inferior selecionado

A seguir, meu código para o item de exibição de navegação inferior selecionado

bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {  
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
    Fragment fragment = null;
    switch (item.getItemId()) {
        case R.id.action_one:
            // Switch to page one
            fragment = FragmentA.newInstance();
            break;
        case R.id.action_two:
            // Switch to page two
            fragment = FragmentB.newInstance();
            break;
        case R.id.action_three:
            // Switch to page three
            fragment = FragmentC.newInstance();
            break;
    }
    getSupportFragmentManager().beginTransaction().replace(R.id.container,fragment,"TAG").commit();
    return true;
}
});

Agora, meu problema é que toda vez que o fragmento é recriado e não quero que o fragmento seja recriado toda vez que eu também tentei adicionar addToBackStack (null), mas neste caso, no pressionamento do botão voltar, continuamos aparecendo fragmentos da pilha que eu não quero.

Existe alguma maneira de exibir fragmentos na barra de navegação inferior selecionada sem recriar fragmentos

questionAnswers(10)

yourAnswerToTheQuestion