style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Suma de LinkedList en Java

Hola que tal soy nuevo en la pàgina, estudio Ing. en Software, me gustaría saber si se pueden sumar los elementos de dos LinkedList por su posición agradecería su respuesta...

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Jvan

No entendí! quieres hacer

No entendí! quieres hacer como una suma vectorial o algo así? si es eso pss lo podrías programar, A menos de que ya exista un método que lo haga, para eso tendrías que darle una revisada a la API.

Imagen de Josh_app

Lo explico...

Tengo 2 LinkedList cada una con 10 valores y me los imprime en JLabel asi;
[1,2,3,4,5,6,7,8,9]
[2,3,4,8,9,8,7,8,3]
ahora lo quiero hacer es que me sume posición uno con posición uno, dos con dos etc..y me los imprima en otro arreglo por ejemplo el resultante de las listas de arriba seria
[3,5,7,12,14,14,14,16,12]...me estoy quebrando la cabeza desde ayer :(....

Imagen de Jvan

Lo primero que tienes que

Lo primero que tienes que hacer es validar que ambas listas tengan el mismo tamaño, si es así entonces creas una tercera lista para guardar las sumas, despues tienes que crear un ciclo que itere desde el primer elemento hasta el último, obtener el valor para cada lista y sumarlos, el resultado lo agregas a la tercer lista y fin.

Imagen de Josh_app

Suma de LinkedList

Ok...trataré con un ciclo...gracias...

Imagen de Josh_app

Suma de LinkedList en java

bien... ya me salio...
Lo que hice fue crear 3 LinkedList y con la ayuda de la funcion .get() la cual te ubica en la posición especificada de una lista, almacené los valores en una variable y despues los mandé a un jLabel....el código quedo así;

x=miLista.get(0)+miLista2.get(0)+miLista3.get(0);
y=miLista.get(1)+miLista2.get(1)+miLista3.get(1);
z=miLista.get(2)+miLista2.get(2)+miLista3.get(2);
a=miLista.get(3)+miLista2.get(3)+miLista3.get(3);
b=miLista.get(4)+miLista2.get(4)+miLista3.get(4);
;
jLabel8.setText(["+Integer.toString(x)+","+Integer.toString(y)+","+Integer.toString(z)+","+Integer.toString(a)+","+Integer.toString(b)+"]");

Imagen de ezamudio

horror...

y si las listas tienen 6 elementos? Tienes que agregar otra línea de código. Y si tienen 7? otra línea... y si tienen 10? 3 líneas más.

Por eso te dijeron al principio que utilizaras un ciclo. Así no importa cuántos elementos tengan las listas, uno o un millón, con el mismo código obtienes el resultado.

Cuando concatenas cadenas con cualquier otro objeto, se le pide toString() a los objetos que no son cadenas, así que todos esos Integer.toString salen sobrando. Y dado que el toString() de una lista te devuelve una cadena con los elementos separados por comas y todo entre corchetes, podrías simplemente invocar el toString de tu lista... ah pero no tienes una lista, tienes un montón de variables, porque tu código sólo sirve para listas de exactamente 5 elementos.

if (lista1.size() == lista2.size()) {
  List<Integer> lista3 = new ArrayList<Integer>(); //o LinkedList o lo que sea
  for (int i = 0; i < lista1.size(); i++) {
    lista3.add(lista1.get(i) + lista2.get(i));
  }
  label.setText(lista3.toString());
} else {
  //indicar error al usuario o lo que sea
}
Imagen de Josh_app

Suma de LinkedList

ok....que tal la lista hice de 5 elementos porque así me la solcitaron pero q bien tu código me ayudó para entender la suma mediante un ciclo y ya vi que la ArrayList no es necesario declararla en la clase...superchido tu aporte ya que voy empezando a programar en java....

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">