Calcular valor das horas para o responsável por um evento

package eventoHSM;

import java.util.ArrayList;
import java.util.List;

public class Eventos {

public static void main(String[] args) {

	Palestra p1 = new Palestra();
	p1.setTitulo("Java Guanabara");
	p1.setCargaHoraria(8);
	p1.setDescricao("Aprenda Java com Orientação objetos nessa série de 30 aulas");
	p1.setHorarioInicio("18h");
	p1.setNomePalestrante("Gustavo Guanabara");
	p1.setNomeResponsavel("Pablo");

	Palestra p2 = new Palestra();
	p2.setTitulo("Python Guanabara");
	p2.setCargaHoraria(16);
	p2.setDescricao("Aprenda Python com Orientação objetos nessa série de 30 aulas");
	p2.setHorarioInicio("20h");
	p2.setNomePalestrante("Gustavo Guanabara");	
	p2.setNomeResponsavel("Pablo");

	Palestra p3 = new Palestra();
	p3.setTitulo("Aprendendo Libras");
	p3.setCargaHoraria(40);
	p3.setDescricao("Aprenda Libras com quem fala libras");
	p3.setHorarioInicio("20h");
	p3.setNomePalestrante("Ana Claudia");	
	p3.setNomeResponsavel("Ana");

	Palestra p4 = new Palestra();
	p4.setTitulo("Daniel e Apocalipse");
	p4.setCargaHoraria(16);
	p4.setDescricao("Aprenda Daniel e Apocalipse com Felipe Silva");
	p4.setHorarioInicio("20h");
	p4.setNomePalestrante("Felipe Silva");	
	p4.setNomeResponsavel("Ana");
	
	
	Responsavel re1 = new Responsavel();
	re1.setNomeResponsavel("Pablo");
	re1.setNumTelefone("71992092623");
	re1.setValorHora(26);
	
	Responsavel re2 = new Responsavel();
	re2.setNomeResponsavel("Ana");
	re2.setNumTelefone("988599600");
	re2.setValorHora(32);
	
	List<Responsavel> responsaveis = new ArrayList<Responsavel>();
	responsaveis.add(re1);
	responsaveis.add(re2);
	
	
	List<Palestra> palestras = new ArrayList<Palestra>();
	palestras.add(p1);
	palestras.add(p2);
	palestras.add(p3);
	palestras.add(p4);
	

	
	for(int a = 0; a < palestras.size(); a++) {
		//System.out.println(palestras.get(a).getCargaHoraria() + " - " + palestras.get(a).getNomeResponsavel());
		for(int i = 0; i< responsaveis.size(); i++) {
			if(palestras.get(a).getNomeResponsavel() == responsaveis.get(i).getNomeResponsavel() ) {
				float valorPorResponsavel = 0;
				valorPorResponsavel = valorPorResponsavel + responsaveis.get(i).getValorHora();
				
				System.out.println(valorPorResponsavel);
			}
		}
	}
	
	


}

}
Estou construindo um projeto (sou estudante) em que preciso criar empresa de eventos. O sistema deve fornecer:

  1. o valor gasto com o responsável;
  2. o valor total dos gastos com as palestras;
  3. o valor total gasto por palestra;
  4. os dados do palestrante com o maior e menor valor gasto em sua palestra.

No código abaixo eu criei as classes Palestra, Palestrantes e Responsável. Estou travado tentando criar alguma forma de retornar o valor total gasto com os responsáveis dos eventos. Criei um for para percorrer o arraylist, só que não deu certo para calcular. Da forma que fiz ele apenas exibe em tela os valores da hora dos responsáveis, mais não consegui fazer calcular o valor da hora pela quantidade de horas dos eventos. Alguém me dá uma ajuda?

obrigado desde já.

String deve ser comparada com o método equals e não com ==.