Desenvolvendo meu primeiro projeto em JAVA

11/01/2012

0

SEEK estive ausente esses dias e estarei novamente apartir de amanhã, juro que perdi um pouco do rumo que tinha tomando desde o sábado... Vamos deixar de conversa mole e vamos ao que interessa... Como você me intimou, primeiro tenho que ler bastante pra evitar fazer algo estruturado numa ambiente orientado a objeto, entendi bem, só tem umas coisas que era complexas pra burro e não teve jeito(mas também achei que aquilo era coisa bem avançada)... Pelo que eu vi, o jeito é fazer pelo console(bem diferente comparado ao Shell do Python(tela preta)), só que eu tô com uma ideia desgraçada na cabeça que eu posso avançar já pra GUI(devo estar ficando louco pra poder desenvolver alguma coisa legal(clicável eu acho kkkkkk) me da um norte cara... Eu sou um cara que tem muita força de vontade só que sem muitas ideias(tenho que mudar isso urgente), a unica ideia que tenho é passar meu projeto do Python pra Java, e logo com GUI... Enfim eu acho que posso e não tenho dúvidas, não sei de tudo, mais gosto de estudar e fazer na hora, to afim de tentar meter a cara no negocio difícil sem medo de errar(até por que ainda estou estudando) me ajuda cara? Tô pensando em desenhar o programa(como ficaria a interface), ver os nomes dos JAlgumaCoisa(componentes que irei usar) para estudar mais sobre eles... e acho que a parada das classes já ta bem fixada na minha cabeça... ME AJUDA?! PS: Num sei se você é professor ou se já é um cara fodão da área sei que você pode me ajudar demais =D enfim... Qualquer coisa serve! Vlw aguadando... [img]http://javafree.uol.com.br/files_user/files/7/51/6E/challenge.jpg[/img]
Murilo Lopes

Murilo Lopes

Responder

Post mais votado

27/01/2012

[quote="Murilo Lilo"]Por que:
p.addTelefone("1234-5678");
? Se p(pessoa) só tem como parâmetro o nome como eu vou add telefone?
[img]http://javafree.uol.com.br/forum/images/smiles/tantan.gif[/img]

Luciano Cargnelutti

Luciano Cargnelutti
Responder

Mais Posts

02/02/2012

Luciano Cargnelutti

Vou por pra baixar agora essa parada de ComboFix
Responder

02/02/2012

Luciano Cargnelutti

[quote="sekkuar"]wow! calma ae! você já conseguiu cadastrar os vários telefones/emails? no cadastrar e alterar? e o toString()? a parte do arquivo vai ser complicada! deixa para depois
Como assim no toString()?
Responder

02/02/2012

Douglas Eric

[quote="Murilo Lilo"][quote="sekkuar"]wow! calma ae! você já conseguiu cadastrar os vários telefones/emails? no cadastrar e alterar? e o toString()? a parte do arquivo vai ser complicada! deixa para depois
Como assim no toString()?
seu toString() retorna Nome + Telefone + Email você vai precisar mudar isso pra ele mostrar todos os telefones e todos os emails.
Responder

02/02/2012

Luciano Cargnelutti

Não faço a menor ideia de como irei fazer isso, me da um norte?
Responder

02/02/2012

Douglas Eric

[quote="Murilo Lilo"]Não faço a menor ideia de como irei fazer isso, me da um norte?
Já dei! faça aqueles fors com as listas
Responder

02/02/2012

Luciano Cargnelutti

pera que agora ta dando um problema, não co conseguindo sair do while que faz o cara digitar os telefones
Responder

02/02/2012

Mathews Motta

[quote="Murilo Lilo"]pera que agora ta dando um problema, não co conseguindo sair do while que faz o cara digitar os telefones
Acho que vc foi pro "norte errado" ...
Responder

02/02/2012

Murilo Lopes

[quote="MathewsMotta"][quote="Murilo Lilo"]pera que agora ta dando um problema, não co conseguindo sair do while que faz o cara digitar os telefones
Acho que vc foi pro "norte errado" ...
Ele olha para a placa que diz: "Polo Sul".
Responder

02/02/2012

Luciano

[quote="ryuuji"][quote="MathewsMotta"][quote="Murilo Lilo"]pera que agora ta dando um problema, não co conseguindo sair do while que faz o cara digitar os telefones
Acho que vc foi pro "norte errado" ...
Ele olha para a placa que diz: "Polo Sul". tah ae uma coisa para se pensar. Se você está no polo sul, não existe sul nem leste nem oeste, só norte. Então alguém no exato polo (magnético) sul, vai ir para o norte, não importa em qual direção ele vá.
Responder

02/02/2012

Luciano Cargnelutti

sekk, vou postar o código todinho como esta agora, vou na dentista e assim que voltar resolvo tudo que você achar de devo, deve ter bastante coisa errada já que eu regredi! Desde já agradeço sua paciência =D
package PackeageTelefone;

import java.util.ArrayList;
import java.util.Scanner;

public class Agenda{
	private ArrayList<Pessoa> pessoas;
	ArrayList<String> telefones;
	ArrayList<String> emails;
	private Scanner scanner;


	public void apagar(){  
		int cont = 0;  
		int index;  
		ArrayList<Pessoa> apag = new ArrayList<Pessoa>();  
		System.out.println("Digite o nome que deseja apagar:");    
		String nome = scanner.nextLine();  
		for (Pessoa p : pessoas){    
			if(p.getNome().equals(nome)){    
				System.out.println(cont+"=> "+p);    
				cont++;  
				apag.add(p);  
			}    
		}  
		System.out.println("A busca encontrou "+ cont +" nome(s).");    
		System.out.println("Escolha o número da opção que deseja apagar:");    
		index = Integer.parseInt(scanner.nextLine());    
		Pessoa p = apag.get(index);   
		pessoas.remove(p);   

		System.out.println("Cadastro apagado com sucesso!");  
		msgVoltar();  
	}

	public void listar(){
		int a = pessoas.size();
		System.out.println("A agenda tem "+a+" número(s) cadastrado(s)!");
		System.out.println("===========================");
		System.out.println("Nome      Telefone      Email");
		for (Pessoa p : pessoas){
			System.out.println(p);
			msgVoltar();
		}
		for (String q : telefones){
			System.out.println(q);
		}
		for (String r : emails){
			System.out.println(r);
		}
	}

	public void procurar(){
		System.out.println("Digite o nome que deseja apagar:");
		String nome = scanner.nextLine();
		for (Pessoa p : pessoas)
			if(p.getNome().equals(nome)){
				System.out.println(p);
			}
		msgVoltar();
	}

	public void alterar(){
		int cont = 0;
		int index;
		ArrayList<Pessoa> temp = new ArrayList<Pessoa>();
		System.out.println("Digite o nome que deseja alterar:");
		String nome = scanner.nextLine();

		for (Pessoa p : pessoas){
			if(p.getNome().equals(nome)){
				System.out.println(cont+"º "+p);
				cont++;
				temp.add(p);
			}

			System.out.println("A busca encontrou "+ cont +" nome(s).");
			System.out.println("Escolha o número da opção que deseja alterar:");
			index = Integer.parseInt(scanner.nextLine());
			Pessoa pp = temp.get(index);
			int opc;
			do{
				System.out.println("O que deseja alterar?\n 1 - NOME\n 2 - TELEFONE\n 3 - EMAIL\n 0 - Encerrar alteração");
				opc = Integer.parseInt(scanner.nextLine());
				switch (opc){
					case 1:
						System.out.println("Digite o novo nome do cadastro..");
						String nom = scanner.nextLine();
						p.setNome(nom);
						break;
					case 2:
						System.out.println("Digite o novo número de telefone do cadastro.");
						String tel = scanner.nextLine();
						//pp.setTelefone(tel);
						break;
					case 3:
						System.out.println("Digite o novo email do cadastro.");
						String mail = scanner.nextLine();
						//p.setEmail(mail);
						break;
					case 0:
						msgVoltar();
						break;
					}
				}while(opc != 0);
			}
		}

	public void msgVoltar(){
		String opc;
		System.out.println("Tecle Enter para voltar!");
		opc = scanner.nextLine();
	}

	public void cadastrar(){
		String telefone = null;
		String email = null;
		System.out.println("Formulário de cadastro:");
		System.out.println("Digite o nome:");
		String nome = scanner.nextLine();
		
		System.out.println("Digite o telefone:");  
		telefone = scanner.nextLine(); 
		while (! telefone.equals("sair")){  
			System.out.println("Digite o telefone:");  
			telefone = scanner.nextLine();  
			if (! telefone.equals("sair")){
				telefones.add(telefone);
			}
		}
		
		System.out.println("Digite o email:");  
		email = scanner.nextLine();
		while (! email.equals("sair")){  
			System.out.println("Digite o email:");  
			email = scanner.nextLine();  
			if (! email.equals("sair")){
				emails.add(email);
			}
		}
		Pessoa pessoa = new Pessoa(nome);
		pessoas.add(pessoa);
		System.out.println("Cadastro efetuado com sucesso!\n");
		msgVoltar();
	}

	public void menu(){
		int opc;
		Arquivo.ler(pessoas);
		do{
			telefones = new ArrayList<String>();
			emails = new ArrayList<String>();
			System.out.println("=================");
			System.out.println(pessoas);
			System.out.println(telefones);
			System.out.println(emails);
			System.out.println("=================");
			System.out.println("Agenda Telefônica");
			System.out.println("=================");
			System.out.println("1 - Cadastrar");
			System.out.println("2 - Procurar");
			System.out.println("3 - Listar todos");
			System.out.println("4 - Alterar");
			System.out.println("5 - Apagar");
			System.out.println("0 - Sair");
			System.out.println("==>");

			try {
                opc = Integer.parseInt(scanner.nextLine());
            } catch (Exception ignore) {
                opc = -1;
            }

			switch (opc){
				case 1:
					cadastrar();
					break;
				case 2:
					procurar();
					break;
				case 3:
					listar();
					break;
				case 4:
					alterar();
					break;
				case 5:
					apagar();
					break;
				case 0:
					Arquivo.salvar(pessoas);
					break;
				default:
					System.out.println("Opção inválida, digite apenas números!");
					msgVoltar();
		}
		}while(opc != 0);
	}

	public Agenda(){
		this.pessoas = new ArrayList<Pessoa>();
		this.scanner = new Scanner(System.in);
	}
}
package PackeageTelefone;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;

public class Arquivo {
	public static void salvar(ArrayList<Pessoa> pessoas) {
		try {
			File file = new File("arquivo.txt"); 
			if (!file.exists()){
				return;
			}else{
				FileWriter fw = new FileWriter(file);
				BufferedWriter bw = new BufferedWriter(fw);
				for(Pessoa p : pessoas){
					String salvando = p.getNome();
					bw.write(salvando);
					bw.newLine();
					bw.flush();
				}
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public static void ler(ArrayList<Pessoa> pessoas){
		try {
			File file = new File("arquivo.txt"); 
				if (!file.exists()){
					return;
				}else{
					FileReader fr = new FileReader(file);
					BufferedReader br = new BufferedReader(fr);
					String s = br.readLine();
					while(s!=null){
						String[] dados = s.split(";");
						Pessoa p = new Pessoa(dados[0]);
						pessoas.add(p);
						s = br.readLine();
					}
				}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}
package PackeageTelefone;

import java.util.ArrayList;

public class Pessoa {
	private String nome;
	private ArrayList<String> telefones;
	private ArrayList<String> emails;
	
	@Override
	public String toString(){
		return getNome();
	}
	
	public String getNome() {
		return nome;
		}
	
	public void setNome(String nome) {
		this.nome = nome;
	}
	
	public ArrayList<String> getTelefones() {  
		return telefones;  
	} 
	
	public void addTelefone(String telefone) {  
		telefones.add(telefone);  
	}  
	
	public ArrayList<String> getEmails() {  
		return emails;  
	}  

	public void addEmail(String email) {  
		emails.add(email);              
	}  
	
	public void removeTelefone(String telefone){  
		emails.remove(telefone);
	}  
	
	public void removeEmail(String email){  
		emails.remove(email);
	}
	
	public Pessoa(String nome) {
		setNome(nome);
	}
}
Responder

02/02/2012

Luciano Cargnelutti

[quote="sekkuar"][quote="ryuuji"][quote="MathewsMotta"][quote="Murilo Lilo"]pera que agora ta dando um problema, não co conseguindo sair do while que faz o cara digitar os telefones
Acho que vc foi pro "norte errado" ...
Ele olha para a placa que diz: "Polo Sul". tah ae uma coisa para se pensar. Se você está no polo sul, não existe sul nem leste nem oeste, só norte. Então alguém no exato polo (magnético) sul, vai ir para o norte, não importa em qual direção ele vá. Se ele SAIR do Polo Sul sim, mas o que estávamos falando era que ele foi para o "norte errado" [size=4](você não adora quando as coisas ficam ironicamente engraçadas?)[/size] e acabou INDO para o Polo Sul. Mas se ele estiver no Polo Norte, só haveria Sul para ir? O que, removendo a metáfora, significa que alguém que está 100% certo não tem como continuar acertando? [size=24]I'm a Genius![/size] [img]http://memebase.com/wp-content/themes/vip/cheezcommon2/ragecomic/packs/various/images/Genius.png[/img]
Responder

02/02/2012

Luciano Cargnelutti

[quote="ryuuji"][quote="sekkuar"][quote="ryuuji"][quote="MathewsMotta"][quote="Murilo Lilo"]pera que agora ta dando um problema, não co conseguindo sair do while que faz o cara digitar os telefones
Acho que vc foi pro "norte errado" ...
Ele olha para a placa que diz: "Polo Sul". tah ae uma coisa para se pensar. Se você está no polo sul, não existe sul nem leste nem oeste, só norte. Então alguém no exato polo (magnético) sul, vai ir para o norte, não importa em qual direção ele vá. Se ele SAIR do Polo Sul sim, mas o que estávamos falando era que ele foi para o "norte errado" [size=4](você não adora quando as coisas ficam ironicamente engraçadas?)[/size] e acabou INDO para o Polo Sul. Mas se ele estiver no Polo Norte, só haveria Sul para ir? O que, removendo a metáfora, significa que alguém que está 100% certo não tem como continuar acertando? [size=24]I'm a Genius![/size] [img]http://memebase.com/wp-content/themes/vip/cheezcommon2/ragecomic/packs/various/images/Genius.png[/img] se ele foi para o norte errado e acabou chegando no polo sul, quer dizer que apartir dali, não tem mais como ele fazer errado? qualquer lugar que ele for vai ser o norte, então o lado certo. E seguindo a sua mesma lógica "genial", alguém que está no polo sul, 100% errado, não tem como errar mais, e pode fazer qualquer coisa que vai estar automaticamente certo!
Responder

02/02/2012

Douglas Eric

[quote="sekkuar"] [...] E seguindo a sua mesma lógica "genial", alguém que está no polo sul, 100% errado, não tem como errar mais, e pode fazer qualquer coisa que vai estar automaticamente certo!
Exato! Genial não? XD Me surpreendo com quanto de esperteza tem na minha cachola...
Responder

02/02/2012

Luciano Cargnelutti

Esses caras são geniais velho, só queria 10% disso =B, e eu aqui pra lá e pra cá, hora to aprendendo a programar ora to no polo sul =(, mas é assim mesmo =D
Responder

02/02/2012

Luciano Cargnelutti

O método listar ficou assim:
public void listar(){
		int a = pessoas.size();
		System.out.println("A agenda tem "+a+" número(s) cadastrado(s)!");
		System.out.println("===========================");
		for (Pessoa p : pessoas){
			System.out.println(p.getNome());
		}
		for (String q : telefones){
			System.out.println(q);
		}
		for (String r : emails){
			System.out.println(r);
		}
		
		msgVoltar();
	}
To com dúvida no toString()... Ficaria assim?
@Override
	public String toString(){
		for (String q : telefones){
			System.out.println(q);
		}
		for (String r : emails){
			System.out.println(r);
		}
		return getNome()+" "+getTelefones()+" "+getEmails();
	}
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar