CURSO DE POO COM JAVA

Documentos relacionados
Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

AULA 6 - ARRAYS. Array de 10 elementos

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

5 Arrays. 5.1 Criando um array. 5.2 Inicializando arrays. c:\>java Array Janeiro tem 31 dias.

Fundamentos de Programação

Linguagem de Programação III

Arrays. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

Array em Java. Figura 1 - Exemplo de um array de inteiros

Instituto Federal de Educação, Ciência e Tecnologia do RN Câmpus Currais Novos. LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I

Lição 7 Array em Java

JAVA NETBEANS Aula PGOO Prof. Daniela Pires Conteúdo

Agenda. O que é um array. Declaração de um array. Instanciação de um array. Acessando os elementos de um array. O tamanho de um array (length)

Programação Estruturada. Arrays

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Computação Eletrônica. Vetores e Matrizes. Prof: Luciano Barbosa. CIn.ufpe.br

Aula 03 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Quinta aula

Vetores Unimensionais

CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO

Matrizes (Vetores Bidimensionais)

CI208 - Programação de Computadores. Aula 24: Arrays. Prof. MSc. Diego Roberto Antunes

Variáveis Compostas. Vanessa Braganholo

Programação Orientada a Objetos

Seleção Múltipla Laços (while, do-while, for) AULA 05

Arrays e Marizes. João Paulo Q. dos Santos

Algoritmos e Programação

Análise de Programação

Vetores Unimensionais

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Linguagem de Programação III

Variáveis primitivas e Controle de fluxo

Algoritmos e Programação

Arrays (Vetores) Arrays (Vetores) 28/04/ Índices. profs. } Ex1: Se eu preciso manipular 100 nomes de pessoas ao mesmo tempo... é melhor...

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

Orientação a Objetos e Java

CURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho

Tabelas e Matrizes. Arrays e Matrizes em Java. Arrays. Isto não é exequível!... Exemplo. Elementos dos Arrays. Necessidade de usarmos Tabelas B[8][6]

Aula 8 Oficina de Programação Vetores. Profa. Elaine Faria UFU

Computação Eletrônica. Aula 08 Estruturas de Dados. Prof: Luciano Barbosa. CIn.ufpe.br

Programação I Matrizes e Strings. Prof. Carlos Alberto

Introdução à Linguagem de Programação Java 1 INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO JAVA

Aula 06 Introdução à Programação Matrizes

Curso Básico de Programação Aula 11. Revisão Aula Anterior Laços de Repetição While; Do-While; For.

Introdução a Programação. Tipos Estruturados de Dados

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

Vetores Unimensionais

Aula 18: Vetores Introdução a Programação Túlio Toffolo & Puca Huachi

Programação: Vetores

Linguagem C vetores. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná

CURSO BÁSICO DE PROGRAMAÇÃO AULA 11. Revisão Aula Anterior Vetores Cadeia de Caracteres

Sintaxe Básica de Java Parte 2

Arrays. Declaração e criação de arrays

INSTRUÇÕES DE REPETIÇÃO

Aula 2 POO 1 Prática. Profa. Elaine Faria UFU

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:

Java Variáveis e Controle Fluxo

Estruturas de Decisão

Paradigmas de Linguagens

Estrutura de Dados Funções e Procedimentos

Linguagem de Programação II Implementação

CURSO BÁSICO DE PROGRAMAÇÃO AULA 19. Netbeans - Linguagem JAVA - Vetores - Matrizes - Métodos

Arrays em Java. Prof. Renato Pimentel. GGI030 Programação Orientada a Objetos. Universidade Federal de Uberlândia Faculdade de Computação

Introdução a JAVA. Variáveis, tipos, expressões, comandos e blocos

Estruturas de Condição, Iteração, Arrays e Enumareção

AULA 02 DADOS PRIMITIVOS E EXERCÍCIOS

Escreva em Java a classe NumeroComplexo que represente um número complexo. A classe deverá ter os seguintes construtores:

Aula 11 Oficina de Programação Estruturas. Profa. Elaine Faria UFU

Sintaxe Básica do Java. João Paulo Q. dos Santos

Laboratório de Programação II

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição

Algoritmos e Estruturas de Dados I

Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação

CIT Aula 02 Variáveis e Estruturas de desvio condicional. Autor: Max Rodrigues Marques Carga Horária: 2 h 22/07/15 1

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

Algoritmos e Programação

Vetores. e o programa deverá ler os valores separadamente:

Classes e Objetos. Sintaxe de classe em Java

Introdução a JAVA. Variaveis, tipos, expressões, comandos e blocos

Estruturas de dados funcionais

LINGUAGEM C: PONTEIROS

CONTEÚDO 04 VETORES. Disciplina: Algoritmos e POO Professora: Alba Lopes.

Java Básico. Carga Horária: 32 horas. Pré-requisito: Lógica de Programação; JAVA. Conteúdo Programático

Transcrição:

07 CURSO DE POO COM JAVA Arrays PROF. MARCOS VINICIUS marcos.engsoft@gmail.com

Introdução Imaginemos que queiramos trabalhar com as notas dos alunos. Supondo que cada aluno deva ter cinco notas, podemos criar cinco variáveis do tipo int para armazenar as notas de um único aluno. int n1, n2, n3, n4, n5; Representação na memória: n1 0 n2 0 n3 0 n4 0 n5 0

Quais problemas podemos ter utilizando a abordagem anterior para notas? É mais complicado trabalhar com um número grande de variáveis; Passar as notas para um método exige a utilização de muitos parâmetros; A solução: utilização de arrays.

Definição Um array é estrutura de dados que define uma coleção ordenada de um número fixo de elementos de dados homogêneos (mesmo tipo). Em Java, arrays são objetos, portanto, precisamos criá-los antes de começarmos a usá-los.

Sintaxe Sintaxe para declaração de arrays: 1 tipo[] nomedoarray; 2 tipo nomedoarray[]; Onde: tipo pode ser um tipo primitivo (int, char,...), classe ou interface. Sintaxe para criação de arrays: nomedoarray = new tipo[ tamanho ]; IMPORTANTE: o tamanho do array não é fornecido na declaração, somente na criação.

Exemplo Para declarar um array de notas, fazemos: int notas[]; ou int[] notas; Para criar o array de notas, fazemos: notas = new int[5]; Também podemos fazer os dois passos de uma vez só: int notas[] = new int[5]; Representação na memória: índices notas [0] [1] [2] [3] [4] 0 0 0 0 0

Em Java, uma vez criado um array, seu tamanho nunca muda!

Passos É bom saber... para execução de um programa Java Quando o array é criado, todos os elementos são inicializados para o valor default do tipo de dado: int a[] = new int[10]; // 10 inteiros com valor 0 boolean b[] =new boolean[5]; //5 booleanos com false Para saber o tamanho do array, usa-se o atributo length: notas.length; // retorna o tamanho do array notas Para acessar um elemento do array, fazemos: nomedoarray[ índice ]; Exemplos: notas[0] = 10; notas[ notas.length-1 ] = 8; System.out.println( 1a nota= +notas[0] ); System.out.println( última nota= +notas[notas.length-1]);

É bom saber... Podemos inicializar o array já na declaração fazendo: tipo[] nomedoarray = { valor1, valor2,... }; // já cria o array com o tamanho equivalente a // quantidade de valores Exemplos: int notas [] = {10, 4, 5, 6, 8 }; String[] monitores={ Marcos, Osvaldo, Renata }; Representação na memória: notas 10 4 5 6 8 monitores Marcos Osvaldo Renata

Manipulando Arrays Pode-se usar os elementos do array separadamente: for (int i = 0; i < notas.length; i++ ) { System.out.println( nota = + notas[ i ]; } Ou o array todo: atribuição e passagem de parâmetro: calcularmedia ( notas ); int [] novasnotas = notas; ATENÇÃO: Se houver uma tentativa de acesso indevido aos índices do array, uma exceção será gerada: ArrayIndexOutOfBoundsException

Arrays multidimensionais Arrays podem ter uma ou múltiplas dimensões (arrays de arrays). Por exemplo, sendo e um array de duas dimensões com dois elementos na primeira e quatro na segunda (2x4), a implementação desse array em Java utilizará três objetos array, conforme o esquema abaixo: e e e00 e01 e02 e03 e0 e1 e00 e01 e02 e03 e10 e11 e12 e13 e0 e1 e10 e11 e12 e13

Arrays multidimensionais Podemos definir arrays multidimensionais conforme a sintaxe: tipo [][][] [] nomedoarray; ou tipo nomedoarray [][][] [] ; Exemplos: int[][] mxnarray; // é equivalente a int[] mxnarray[]; int [][] umarray; // Array de duas dimensões umarray = new int[4][5]; // Criando array 4x5 de inteiros int [][] outroarray = new int[4][5]; // combinando declaração // e criação

Arrays multidimensionais Inicializando Arrays Multidimensionais: double taxas[][] = { { 1,2,3 }, {4,5,6} }; Para acessar um elemento do array bidimensional, fazemos: nomedoarray [indice1][indice2][indice3]...[indicen] Exemplos: int [][] arr = new int [3][4]; arr[1][2] = 5; arr[2][3] = 7; System.out.println ( a[1][2] ); System.out.println ( a[2][3] ); 0 1 2 0 1 2 3 0 0 0 0 0 0 5 0 0 0 0 7 arj[1][2] arj[2][3]

Arrays multidimensionais Num array multidimensional, para saber o tamanho da primeira dimensão, usa-se o atributo length: int [][] meuarray = new int [4][5]; meuarray.length retorna o tamanho da primeira dimensão = 4 Para varrer um array bidimensional, precisamos utilizar dois for s: tamanho da 1ª dimensão int arr[][] = new int[4][5]; for (int i = 0; i < arr.length; i++ ) for (int j = 0; j < arr[i].length; j++ ) System.out.println( arr[i][j] ); tamanho da 2ª dimensão

Arrays multidimensionais Na criação de arrays multidimensionais com o operador new, a profundidade dos arrays mais internos pode ser omitida: double matrix[][] = new double[3][]; A inicialização poderia ser assim: for (int i = 0; i < matrix.length; ++i) matrix[ i ] = new double[ i+1 ]; A representação da memória, nesse caso, seria: matrix : double[][] length = 3 [ 0 ] : ref (double[]) [ 1 ] : ref (double[]) [ 2 ] : ref (double[]) matrix[0] : double[] length = 1 [ 0 ] 0.0 matrix[1] : double[] length = 2 [ 0 ] [ 1 ] 0.0 0.0 matrix[2] : double[] length = 2 [ 0 ] [ 1 ] [ 2 ] 0.0 0.0 0.0

DÚVIDAS?

Vamos treinar: exercícios propostos 1) Escreva um programa com um laço while que inicializa um vetor de 50 inteiros com os valores de 50 a 99. 2) Escreva um programa que cria uma matriz bidimensional de 20 x 10 elementos booleanos, inicializando as linhas pares com true e as linhas ímpares com false. Depois, imprima na tela todos os elementos da matriz. 3) Escreva um programa que receba via teclado três palavras e armazene-as num array de Strings. Depois, imprima o array.

Vamos treinar: exercícios propostos 4) Escreva um programa que declara, inicializa e depois mostra na tela os seguintes arrays: Um array contendo os nomes dos dias da semana; Outro array bidimensinal contendo: em uma linha os meses (1, 2,...) e em outra linha a quantidade de dias de cada mês do ano 5) Escreva um programa que cria um array de duas dimensões, sendo a primeira dimensão de tamanho 3, e a segunda com tamanhos diferentes (2, 3 e 4), inicializando os elementos de cada linha com o índice da linha, por exemplo, os elementos da linha 0 recebem 0, os da linha 1 recebem 1... (use laço de repetição) 6) Escreva um programa que cria uma matriz de duas dimensões 2x3 e calcula a soma dos elementos cujos índices são pares.

Obrigado e até a próxima aula.