Material de apoio das aulas de tutoria de Algoritmos e Estrutura de dados da Universidade Federal de Ouro Preto, Campus João Monlevade. O conteúdo abordado é uma revisão sobre structs na linguagem de programação C.
Material de apoio das aulas de tutoria de Algoritmos e Estrutura de dados da Universidade Federal de Ouro Preto, Campus João Monlevade. O conteúdo abordado é uma revisão sobre structs na linguagem de programação C.
Python não força o programador a pensar em objetos, mas eles fazem parte da linguagem desde o início, incluindo conceitos avançados como sobrecarga de operadores, herança múltipla e introspecção. Com sua sintaxe simples, é muito natural aprender orientação a objetos em Python
• Usar estruturas de controle de repetição (while, do-while e for) que permitem a
repetição da execução de partes específicas do código
• Usar declarações de interrupção (break, continue e return ) que permitem o redirecionamento do fluxo do programa
A maioria das vezes necessitamos tomar decisões no andamento do algoritmo. Essas decisões interferem diretamente no andamento do programa.
São estruturas que, dada a avaliação de uma expressão (condição), permite a escolha de um fluxo de instruções a ser executado.
Módulo 9 - Introdução à Programação Orientada a Objectos Luis Ferreira
Características da Programação Orientada por Objetos (POO).
Conceito de Classe, Atributos, Métodos, e Eventos.
Conceito de Objeto.
Conceito de Encapsulamento.
Conceito de Visibilidade de Classes, Métodos e Atributos.
Diagramas de Classe.
O ambiente de trabalho do Visual C#.
Objetos básicos e outras características básicas da linguagem do Visual C# e respetivo ambiente de trabalho.
Um dos pilares da orientação a objetos, o Encapsulamento é o conceito responsável pela definição de acessos as classes e seus métodos e atributos. Juntamente com a Herança e o Polimorfismo, itens essenciais a compreensão deste paradigma de programação.
Apresentação feita para o treinamento dos colaboradores da Vitrio.
Público alvo do treinamento: Analistas de conteúdo, Designers e equipe de Marketing Digital.
O principal assunto era uma breve introdução ao JavaScript ,jQuery e plugins. Entretanto, abrangemos outros tópicos, tais como: Desenvolvimento em Camadas, requisições, performance de web sites e algumas ferramentas.
Como criar um projeto no Netbeans? Como Adicionar uma Classe? Como abrir um projeto? Nesta aula vamos responder algumas dúvidas do pessoal que está começando a programar!
Visão Geral de componentes e Conexões
Tracker
características
- Controlador
- Agentes rastreadores não MVS
- Agentes tolerantes a falhas
- Armazenamento de dados
- Protocolo de servidor APPC / MVS
- Servidor TCP / IP
Congres Het Nieuwe Werken, Wetenschap en PraktijkR. Zandbergen
Het Nieuwe Werken staat voor flexibel werk in termen van tijd en locatie, vaak gecombineerd met handige toepassing van moderne ICT-mogelijkheden en een andere organisatiecultuur. Veel organisaties werken volgens principes van Het Nieuwe Werken, of denken erover hier mee te beginnen. De uitgangspositie en doelstellingen van organisaties kunnen sterk verschillen, evenals de concrete uitwerking van het concept. Maar wat de concrete vormgeving van Het Nieuwe Werken ook inhoudt, het wordt veelal geïmplementeerd met de hoop op positieve uitkomsten: verhoogde medewerkerstevredenheid, efficiënter werk verzetten, meer oog voor duurzaamheid, een grotere aantrekkelijkheid als werkgever, of een serieuze kostenbesparing bewerkstelligen.
Maar wat is er nu precies bekend over de effecten van Het Nieuwe Werken? Ervaringsdeskundigen schrijven in boeken, blogs of nieuwsartikelen over succeservaringen. Tegelijkertijd dienen de eerste critici zich al aan. De diverse ervaringen zijn al met al soms tegenstrijdig en het lijkt moeilijk om vast te stellen wat nu écht de effecten zijn van Het Nieuwe Werken. Bovendien is de implementatie van Het Nieuwe Werken een grote uitdaging in praktische zin: Hoe pak je zoiets aan, waar begin je, en waar kun je allemaal tegenaan lopen?
Op dit congres zullen zowel de wetenschap als de praktijk van Het Nieuwe Werken aan bod komen. De wetenschap zal in brede lijnen een beeld geven van trends in de moderne organisatie van het werk en van de effecten die deze trends naar verwachting op welzijn en prestatie van medewerkers kunnen hebben. Ook wordt een uitvoerige studie van een concrete casus besproken, waarin werd onderzocht wat voor de medewerkers de belangrijkste gevolgen van Het Nieuwe Werken zijn en hoe dit door hen wordt ervaren. Een spreker uit de praktijk zal daarna dieper ingaan op de implementatie van Het Nieuwe Werken: wat zijn de diverse overwegingen geweest voor het invoeren van HNW, wat kwam er bij de daadwerkelijke uitvoering kijken? Wat zijn valkuilen en leermomenten geweest, en wat beviel goed?
Hoe faciliteer ik de ICT-kant van HNW?
In een Nieuwe Werkomgeving gaat alles anders: men heeft geen vaste werkplek meer, ontmoetingen zijn niet langer altijd face-to-face, en documenten worden veelal digitaal gedeeld zodat zij overal beschikbaar zijn. Al deze veranderingen leiden tot de beoogde flexibiliteit. Maar dat gaat natuurlijk niet vanzelf!
De rol van ICT in Het Nieuwe Werken lijkt natuurlijk erg belangrijk. Maar hoe krijg je een nieuw ICT systeem van de grond, waar moeten zulke systemen aan voldoen? Wat zijn de verschillende mogelijkheden, en wat sluit het beste aan bij welke doelstellingen? Hoe groot is de rol van ICT eigenlijk voor het gehele slagen of falen van Het Nieuwe Werken? Kan Het Nieuwe Werken ook slagen zonder ondersteuning van ICT?
Er werd door Ruud Zandbergen gesproken worden over de diverse soorten oplossingen die ICT biedt voor het faciliteren van een flexibele en effectieve werkomgeving.
Python não força o programador a pensar em objetos, mas eles fazem parte da linguagem desde o início, incluindo conceitos avançados como sobrecarga de operadores, herança múltipla e introspecção. Com sua sintaxe simples, é muito natural aprender orientação a objetos em Python
• Usar estruturas de controle de repetição (while, do-while e for) que permitem a
repetição da execução de partes específicas do código
• Usar declarações de interrupção (break, continue e return ) que permitem o redirecionamento do fluxo do programa
A maioria das vezes necessitamos tomar decisões no andamento do algoritmo. Essas decisões interferem diretamente no andamento do programa.
São estruturas que, dada a avaliação de uma expressão (condição), permite a escolha de um fluxo de instruções a ser executado.
Módulo 9 - Introdução à Programação Orientada a Objectos Luis Ferreira
Características da Programação Orientada por Objetos (POO).
Conceito de Classe, Atributos, Métodos, e Eventos.
Conceito de Objeto.
Conceito de Encapsulamento.
Conceito de Visibilidade de Classes, Métodos e Atributos.
Diagramas de Classe.
O ambiente de trabalho do Visual C#.
Objetos básicos e outras características básicas da linguagem do Visual C# e respetivo ambiente de trabalho.
Um dos pilares da orientação a objetos, o Encapsulamento é o conceito responsável pela definição de acessos as classes e seus métodos e atributos. Juntamente com a Herança e o Polimorfismo, itens essenciais a compreensão deste paradigma de programação.
Apresentação feita para o treinamento dos colaboradores da Vitrio.
Público alvo do treinamento: Analistas de conteúdo, Designers e equipe de Marketing Digital.
O principal assunto era uma breve introdução ao JavaScript ,jQuery e plugins. Entretanto, abrangemos outros tópicos, tais como: Desenvolvimento em Camadas, requisições, performance de web sites e algumas ferramentas.
Como criar um projeto no Netbeans? Como Adicionar uma Classe? Como abrir um projeto? Nesta aula vamos responder algumas dúvidas do pessoal que está começando a programar!
Visão Geral de componentes e Conexões
Tracker
características
- Controlador
- Agentes rastreadores não MVS
- Agentes tolerantes a falhas
- Armazenamento de dados
- Protocolo de servidor APPC / MVS
- Servidor TCP / IP
Congres Het Nieuwe Werken, Wetenschap en PraktijkR. Zandbergen
Het Nieuwe Werken staat voor flexibel werk in termen van tijd en locatie, vaak gecombineerd met handige toepassing van moderne ICT-mogelijkheden en een andere organisatiecultuur. Veel organisaties werken volgens principes van Het Nieuwe Werken, of denken erover hier mee te beginnen. De uitgangspositie en doelstellingen van organisaties kunnen sterk verschillen, evenals de concrete uitwerking van het concept. Maar wat de concrete vormgeving van Het Nieuwe Werken ook inhoudt, het wordt veelal geïmplementeerd met de hoop op positieve uitkomsten: verhoogde medewerkerstevredenheid, efficiënter werk verzetten, meer oog voor duurzaamheid, een grotere aantrekkelijkheid als werkgever, of een serieuze kostenbesparing bewerkstelligen.
Maar wat is er nu precies bekend over de effecten van Het Nieuwe Werken? Ervaringsdeskundigen schrijven in boeken, blogs of nieuwsartikelen over succeservaringen. Tegelijkertijd dienen de eerste critici zich al aan. De diverse ervaringen zijn al met al soms tegenstrijdig en het lijkt moeilijk om vast te stellen wat nu écht de effecten zijn van Het Nieuwe Werken. Bovendien is de implementatie van Het Nieuwe Werken een grote uitdaging in praktische zin: Hoe pak je zoiets aan, waar begin je, en waar kun je allemaal tegenaan lopen?
Op dit congres zullen zowel de wetenschap als de praktijk van Het Nieuwe Werken aan bod komen. De wetenschap zal in brede lijnen een beeld geven van trends in de moderne organisatie van het werk en van de effecten die deze trends naar verwachting op welzijn en prestatie van medewerkers kunnen hebben. Ook wordt een uitvoerige studie van een concrete casus besproken, waarin werd onderzocht wat voor de medewerkers de belangrijkste gevolgen van Het Nieuwe Werken zijn en hoe dit door hen wordt ervaren. Een spreker uit de praktijk zal daarna dieper ingaan op de implementatie van Het Nieuwe Werken: wat zijn de diverse overwegingen geweest voor het invoeren van HNW, wat kwam er bij de daadwerkelijke uitvoering kijken? Wat zijn valkuilen en leermomenten geweest, en wat beviel goed?
Hoe faciliteer ik de ICT-kant van HNW?
In een Nieuwe Werkomgeving gaat alles anders: men heeft geen vaste werkplek meer, ontmoetingen zijn niet langer altijd face-to-face, en documenten worden veelal digitaal gedeeld zodat zij overal beschikbaar zijn. Al deze veranderingen leiden tot de beoogde flexibiliteit. Maar dat gaat natuurlijk niet vanzelf!
De rol van ICT in Het Nieuwe Werken lijkt natuurlijk erg belangrijk. Maar hoe krijg je een nieuw ICT systeem van de grond, waar moeten zulke systemen aan voldoen? Wat zijn de verschillende mogelijkheden, en wat sluit het beste aan bij welke doelstellingen? Hoe groot is de rol van ICT eigenlijk voor het gehele slagen of falen van Het Nieuwe Werken? Kan Het Nieuwe Werken ook slagen zonder ondersteuning van ICT?
Er werd door Ruud Zandbergen gesproken worden over de diverse soorten oplossingen die ICT biedt voor het faciliteren van een flexibele en effectieve werkomgeving.
Informatieve sessie voor burgemeester, wethouders, politici en overige ambtenaren van de Gemeente Amstelveen over gebruik van sociale media, Ambtenaar 2.0 en nieuwe vormen van communiceren en samenwerken.
Het nieuwe werken, nieuwe media en de invloed ervan op je werkuitoefening.
(een interactieve en informatieve middag met debat en concrete toepassing van het nieuwe werken met nieuwe media)
Open Innovatie Festival - Ruud ZandbergenR. Zandbergen
In deze sessie wordt ingegaan op een wereld die met "Web 2.0" en "sociale media" wordt aangeduid. Daarbij wordt stilgestaan bij wat het is, wat de mogelijkheden voor overheden zijn en wat de toegevoegde waarde is. Dit aan de hand van voorbeelden en met een praktische insteek. Er is veel ruimte voor vragen en discussies.
Ruud Zandbergen begeleidt organisaties met nieuwe manieren van werken.
Een verslag van deze sessie is hier te vinden: http://www.mindz.com/plazas/Open_Innovatie/blogs/Open_Innovatie_Weblog/2009/12/4/_openinnovatie_Sociale_Media_en_toepassing_in_je_werk
• Criar códigos para a captura de dados pelo teclado.
• Usar a classe BufferedReader para captura, através de uma janela de console, dos dados digitados no teclado.
• Utilizar a classe Scanner para captura, através de uma janela de console, dos dados digitados no teclado.
• Utilizar a classe JOptionPane para captura, através da uma interface gráfica, dos dados digitados no teclado.
Functional Overview
• Gestão da Política
• Definir, visualizar e modificar as políticas de planejamento de Workloads
• Emprego, subsistemas e atividades manuais
• Monitoramento e controle
• modificação automática de fluxos de entrada
• Caixa de diálogo para atividades manuais
• diálogos ISPF
• Job Scheduling Console e TDWC
Tivoli Enterprise Portal (TEP)
Este curso tem como objetivo, ensinar os procedimentos básicos para iniciar o uso de microcomputadores. Pretendemos então, capacitar o aluno a executar rotinas que auxiliem no curso desta entidade educacional, utilizando o microcomputador como uma ferramenta auxiliar ao seu aprendizado.
Introdução à programação para web com Java - Módulo 01: Conexão com bamco de...Professor Samuel Ribeiro
Conectar-se a um banco de dados com Java é feito de maneira elegante. Para evitar que cada banco tenha
a sua própria API e conjunto de classes e métodos, temos um único conjunto de interfaces muito bem definidas
que devem ser implementadas.
Herança
Herança é um dos princípios fundamentais em orientação a objeto. Um comportamento (método) é definido e codificado uma única vez em uma única classe e este comportamento é herdado por todas suas subclasses. Uma subclasse precisa apenas implementar as diferenças em relação a sua classe pai, ou seja, adaptar-se ao meio em que vive.
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...Professor Samuel Ribeiro
Classes
Atributos e métodos para as classes
Objeto this para acessar dados de instância
Overloading de métodos
Importar e criar pacotes
Usar modificadores de acesso para controlar o acesso aos elementos de uma classe
Programação Orientada a Objetos e alguns dos seus conceitos
Diferenças entre classes e objetos
Diferenças entre atributos e métodos de objeto de atributos e métodos de classe
Métodos
• Usar estruturas de controle de decisão (if e switch) que permitem a seleção de partes
específicas do código para execução
• Usar estruturas de controle de repetição (while, do-while e for) que permitem a
repetição da execução de partes específicas do código
• Usar declarações de interrupção (break, continue e return) que permitem o redirecionamento do fluxo do programa
Funcional Overview
Objectives
Upon completion of this unit, you will be able to:
• Describe the functions of TWS for z/OS workstations
• List the types of TWS for z/OS workstations
• Create TWS for z/OS workstation
Functional Overview
• Gestão da Política
• Definir, visualizar e modificar as políticas de planejamento de Workloads
• Emprego, subsistemas e atividades manuais
• Monitoramento e controle
• modificação automática de fluxos de entrada
• Caixa de diálogo para atividades manuais
• diálogos ISPF
• Job Scheduling Console e TDWC
Tivoli Enterprise Portal (TEP)
Uma introdução ao IBM Tivoli Workload Scheduler para z / OS e introduziremos mais algumas terminologias.
O IBM Tivoli Workload Scheduler para z / OS é um sistema complexo desenhado como um sistema de controle. A partir deste sistema, você pode automaticamente planejar, controlar e monitorar a produção da sua carga de trabalho.
Operations Planning and Control Tivoli Workload Scheduler
Objetivo: Conhecer, Identificar e Monitorar os processos de racionalização da automação dinâmica de cargas de trabalho para System z.
Arrays, também muito conhecidos como vetores, são variáveis que servem para guardar vários valores do mesmo tipo de forma uniforme na memória.
Aprenda o que são matrizes e como usar esses arrays (ou vetores) multidimensionais
Em ciência da computação tipos de variáveis ou dados é uma combinação de valores e de operações que uma variável pode executar, o que pode variar conforme o sistema operacional e a linguagem de computador.
LIVRO MPARADIDATICO SOBRE BULLYING PARA TRABALHAR COM ALUNOS EM SALA DE AULA OU LEITURA EXTRA CLASSE, COM FOCO NUM PROBLEMA CRUCIAL E QUE ESTÁ TÃO PRESENTE NAS ESCOLAS BRASILEIRAS. OS ALUNOS PODEM LER EM SALA DE AULA. MATERIAL EXCELENTE PARA SER ADOTADO NAS ESCOLAS
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdfenpfilosofiaufu
Caderno de Resumos XVIII Encontro de Pesquisa em Filosofia da UFU, IX Encontro de Pós-Graduação em Filosofia da UFU e VII Encontro de Pesquisa em Filosofia no Ensino Médio
proposta curricular para educação de jovens e adultos- Língua portuguesa- anos finais do ensino fundamental (6º ao 9º ano). Planejamento de unidades letivas para professores da EJA da disciplina língua portuguesa- pode ser trabalhado nos dois segmentos - proposta para trabalhar com alunos da EJA com a disciplina língua portuguesa.Sugestão de proposta curricular da disciplina português para turmas de educação de jovens e adultos - ensino fundamental. A proposta curricular da EJa lingua portuguesa traz sugestões para professores dos anos finais (6º ao 9º ano), sabendo que essa modalidade deve ser trabalhada com metodologias diversificadas para que o aluno não desista de estudar.
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24, Pr Henrique, EBD NA TV, Revista ano 11, nº 1, Revista Estudo Bíblico Jovens E Adultos, Central Gospel, 2º Trimestre de 2024, Professor, Tema, Os Grandes Temas Do Fim, Comentarista, Pr. Joá Caitano, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Com. Extra Pr. Luiz Henrique, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique
proposta curricular da educação de jovens e adultos da disciplina geografia, para os anos finais do ensino fundamental. planejamento de unidades, plano de curso da EJA- GEografia
para o professor que trabalha com a educação de jovens e adultos- anos finais do ensino fundamental.
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24, Pr Henrique, EBD NA TV, 2° TRIMESTRE DE 2024, ADULTOS, EDITORA BETEL, TEMA, ORDENANÇAS BÍBLICAS, Doutrina Fundamentais Imperativas aos Cristãos para uma vida bem-sucedida e de Comunhão com DEUS, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Comentários, Bispo Abner Ferreira, Com. Extra Pr. Luiz Henrique, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24, Pr Henrique, EBD NA TV, Lições Bíblicas, 2º Trimestre de 2024, adultos, Tema, A CARREIRA QUE NOS ESTÁ PROPOSTA, O CAMINHO DA SALVAÇÃO, SANTIDADE E PERSEVERANÇA PARA CHEGAR AO CÉU, Coment Osiel Gomes, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Com. Extra Pr. Luiz Henrique, de Almeida Silva, tel-What, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique, https://ebdnatv.blogspot.com/
Atividade - Letra da música "Tem Que Sorrir" - Jorge e MateusMary Alvarenga
A música 'Tem Que Sorrir', da dupla sertaneja Jorge & Mateus, é um apelo à reflexão sobre a simplicidade e a importância dos sentimentos positivos na vida. A letra transmite uma mensagem de superação, esperança e otimismo. Ela destaca a importância de enfrentar as adversidades da vida com um sorriso no rosto, mesmo quando a jornada é difícil.
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Java básico - Módulo 06: Array
1.
2. Declarar e criar array
Acessar elementos de um array
Determinar o número de elementos de um
array
Declarar e criar array multidimensional
O que vamos ver
hoje?
3. Na declaração de variáveis, freqüentemente utilizamos um
identificador ou um nome e um tipo de dados. Para se utilizar uma
variável, deve-se chamá-la pelo nome que a identifica.
Por exemplo, temos três variáveis do tipo int com diferentes
identificadores para cada variável
int number1;
int number2;
int number3;
number1 = 1;
number2 = 2;
number3 = 3;
Introdução a Array
4. Como se vê, inicializar e utilizar variáveis pode torna-se uma
tarefa tediosa, especialmente se elas forem utilizadas para
o mesmo objetivo. Em Java, e em outras linguagens
de programação, pode-se utilizar uma variável para armazenar
e manipular uma lista de dados com maior eficiência. Este tipo
de variável é chamado de array.
Introdução a Array
5. Um array armazena múltiplos itens de um mesmo tipo de
dado em um bloco contínuo de memória, dividindo-o em certa
quantidade de posições. Imagine um array como uma variável
esticada – que tem um um nome que a identifica e que pode
conter mais de um valor para esta mesma variável.
Introdução a Array
6. Array precisa ser declarados como qualquer variável. Ao
declarar um array, defina o tipo de dados deste seguido por
colchetes [] e pelo nome que o identifica.
Por exemplo:
int [] ages;
ou colocando os colchetes depois do identificador.
Por exemplo:
int ages[];
Declarando Array
7. Depois da declaração, precisamos criar o array e especificar
seu tamanho. Este processo é chamado de construção
(a palavra, em orientação a objetos, para a criação de objetos).
Para se construir um objeto, precisamos utilizar um construtor.
Por exemplo:
// declaração
int ages[];
// construindo
ages = new int[100];
ou, pode ser escrito como:
// declarar e construir
int ages[] = new int[100];
Declarando Array
8. Em vez de utilizar uma nova linha de instrução para construir
um array, também é possível automaticamente declarar,
construir e adicionar um valor uma única vez.
// criando um array de valores lógicos em uma variável
// results. Este array contém 4 elementos que são
// inicializados com os valores {true, false, true, false}
boolean results[] ={ true, false, true, false };
// criando um array de 4 variáveis double inicializados
// com os valores {100, 90, 80, 75};
double []grades = {100, 90, 80, 75};
// criando um array de Strings com identificador days e
// também já inicializado. Este array contém 7 elementos
String days[] = {"Mon","Tue","Wed","Thu","Fri","Sat","Sun"};
Declarando Array
9. Uma vez que tenha sido inicializado, o tamanho de um array
não pode ser modificado, pois é armazenado em um bloco
contínuo de memória.
Para acessar um elemento do array, ou parte de um array,
utiliza-se um número inteiro chamado de índice.
Declarando Array
10. Um índice é atribuído para cada membro de um array,
permitindo ao programa e ao programador acessar os valores
individualmente quando necessário. Os números dos índices são sempre
inteiros. Eles começam com zero e progridem seqüencialmente por
todas as posições até o fim do array. Lembre-se que os elementos
dentro do array possuem índice de 0 a tamanhoDoArray-1.
Por exemplo, dado o array ages que declaramos anteriormente, temos:
// atribuir 10 ao primeiro elemento do array
ages[0] = 10;
// imprimir o último elemento do array
System.out.print(ages[99]);
Declarando Array
11. Lembre-se que o array, uma vez declarado e construído, terá
o valor de cada membro inicializado automaticamente. Conforme a
seguinte tabela:
Declarando Array
12. Entretanto, tipos de dados por referência, como as Strings, não serão
inicializados caracteres em branco ou com uma string vazia "", serão
inicializados com o valor null. Deste modo, o ideal é preencher os
elementos do arrays de forma explícita antes de utilizá-los. A manipulação
de objetos nulos pode causar a desagradável surpresa de uma
exceção do tipo NullPointerException, por exemplo, ao tentar
executar algum método da classe String,
conforme o exemplo a seguir:
public class ArraySample {
public static void main(String[] args){
String [] nulls = new String[2];
System.out.print(nulls[0]); // Linha correta, mostra null
System.out.print(nulls[1].trim()); // Causa erro
}
}
Declarando Array
13. O código abaixo utiliza uma declaração for para mostrar todos os
elementos de um array.
public class ArraySample {
public static void main(String[] args){
int[] ages = new int[100];
for (int i = 0; i < 100; i++) {
– ages[i] =i;
System.out.print(ages[i]);
}
}
}
Declarando Array
14. 1. Normalmente, é melhor inicializar, ou instanciar,
um array logo após declará-lo. Por exemplo, a instrução:
int []arr = new int[100];
é preferível, ao invés de:
int [] arr;
arr = new int[100];
2. Os elementos de um array de n elementos tem índices de 0 a n-1. Note
que não existe o elemento arr[n]. A tentativa de acesso a este elemento
causará uma exceção do tipo ArrayIndexOutOfBoundsException, pois o
índice deve ser até n-1.
3. Não é possível modificar o tamanho de um array.
Dicas de programação:
15. Para se obter o número de elementos de um array, pode-se utilizar o
atributo length. O atributo length de um array retorna seu tamanho, ou
seja, a quantidade de elementos.
É utilizado como no código abaixo:
nomeArray.length
Por exemplo, dado o código anterior, podemos reescrevê-lo como:
public class ArraySample {
public static void main (String[] args) {
int[] ages = new int[100];
for (int i = 0; i < ages.length; i++) {
System.out.print(ages[i]);
}
}
}
Tamanho de Array
16. 1. Quando criar laços com for para o processamento
de um array, utilize o campo length como argumento da expressão lógica.
Isto irá permitir ao laço ajustar-se, automaticamente para tamanhos de
diferentes arrays.
2. Declare o tamanho dos arrays utilizando variáveis do tipo constante para
facilitar alterações posteriores. Por exemplo:
final int ARRAY_SIZE = 1000; // declarando uma constante
...
int[] ages = new int[ARRAY_SIZE];
Dicas de programação:
17. Arrays multidimensionais são implementados como arrays dentro de
arrays. São declarados ao atribuir um novo conjunto de colchetes depois
do nome do array. Por exemplo:
// array inteiro de 512 x 128 elementos
int [][] twoD = new int[512][128];
// array de caracteres de 8 x 16 x 24
char [][][] threeD = new char[8][16][24];
// array de String de 4 linhas x 2 colunas
String [][] dogs = {{"terry", "brown"},
{"Kristin", "white"},
{"toby", "gray"},
{"fido", "black"}};
Arrays Multidimensionais
18. Acessar um elemento em um array multidimensional é semelhante a
acessar elementos em um array de uma dimensão. Por exemplo, para
acessar o primeiro elemento da primeira linha do array dogs, escreve-se:
System.out.print(dogs[0][0]);
Isso mostrará a String "terry" na saída padrão. Caso queira mostrar todos
os elementos deste
array, escreve-se:
for (int i = 0; i < dogs.length; i++) {
for (int j = 0; j < dogs[i].length; j++) {
System.out.print(dogs[i][j] + " ");
}
}
Arrays Multidimensionais
20. 7.1. Dias da semana
Criar um array de Strings inicializado com os nomes dos sete dias da
semana. Por exemplo:
String days[] = {"Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday", "Sunday"};
Usando uma declaração while, imprima todo o conteúdo do array. Faça
o mesmo para as declarações do-while e for.
7.2. Maior número
Usando as classes BufferedReader, Scanner ou JOptionPane,
solicite 10 números ao usuário. Utilize um array para armazenar o valor
destes números. Mostre o número de maior valor.
Exercícios
21. Entradas de agenda telefônica
Dado o seguinte array multidimensional, que contém as entradas da
agenda telefônica:
String entry = {{"Florence", "735-1234", "Manila"},
{"Joyce", "983-3333", "Quezon City"},
{"Becca", "456-3322", "Manila"}};
mostre-as conforme o formato abaixo:
Name : Florence
Tel. # : 735-1234
Address: Manila
Name : Joyce
Tel. # : 983-3333
Address: Quezon City
Name : Becca
Tel. # : 456-3322
Address: Manila
Exercícios