La meilleure façon d'augmenter Entier dans la liste de tableaux en Java
Quelle est la façon la plus propre à incrémenter un Entier dans une liste de tableaux?
ArrayList<Integer> ints = new ArrayList<>();
ints.add(5);
ints.add(9);
Quelle est la façon la plus propre à incrémenter le dernier élément?
ints.set(ints.size() - 1, ints.get(ints.size() - 1) + 1);
semble assez laid pour moi.
- C'est assez laid, mais beaucoup de Java est. Je voudrais examiner l'emballant dans une méthode de sorte que votre principale code n'est pas encombré.
- Je suis avec @DaveNewton sur celui-ci. Je ne vois pas une meilleure façon, mais j'avais l'envelopper dans une méthode pour des raisons de lisibilité / testabilité.
- int lastIndex = ints.size() -1; int lastValue = ints.get(lastIndex); ints.set(lastIndex, lastValue + 1);
Vous devez vous connecter pour publier un commentaire.
Peut-être vous avez besoin d'utiliser une autre structure de données?
Vous ne pouvez pas incrémenter la valeur en place depuis
Integer
des objets immuables. Vous aurez à obtenir la valeur précédente à une position spécifique dans leArrayList
, incrémenter la valeur, et l'utiliser pour remplacer l'ancienne valeur dans la même position.Vous pouvez également utiliser un mutables de type entier, comme
AtomicInteger
(ou écrire votre propre).J'ai fait quelque chose comme ceci:
voici un exemple de mon code (modifié noms):
J'ai peut être fait par l'utilisation de code java ...En qui nous pouvons Incrément de chaque élément de la liste
j'ai fait le compter aussi...
À cette question posée dans l'un des interview..