E pessoal beleza aqui é o Professor Arnaldo professor de informática do Instituto Federal do Tocantins e hoje a gente vai falar sobre a linguagem de programação Java conteúdo muito frequente aí em concursos públicos e antes da gente resolver questões sobre esse assunto a gente vai compreender os conceitos básicos dessa linguagem Então vamos nessa primeira característica que nós temos Aqui da linguagem é que Java é uma linguagem orientada a objetos quem tá fazendo parte aí do nosso grupo lá no WhatsApp de informática para concursos de informática quem deseja estudar informática para concurso informática pode aí através
do link na descrição ou nos comentários ingressar no nosso grupo lá eu já avisei aos estudantes que é primordial que antes da gente estudar Java a gente Entenda os conceitos Relacionados a orientação a objetos paradigma de orientação objetos tá Inclusive tem uma aula aí na descrição só sobre esse tema então orientação objeto ela nos diz que é os elementos que estão sendo ali representados acerca do sistema que a gente vai desenvolver ou Vai representar eles são tratados como classes são representados através de classe então por exemplo se eu tenho um sistema que tem um cadastro
de pessoas ou de Clientes então eu posso eu vou ter provavelmente ler uma classe representando as características do cliente então o que que o cliente tem em comum tem o nome então CPF tem outras informações e o que que o cliente pode fazer no sistema pode fazer login pode fazer em funções né então isso são os métodos então nas classes a gente tem propriedades e tem métodos propriedades descrevem características De elementos dessa classe tá e os métodos descrevem aquilo que esses elementos podem fazer beleza para uma compreensão mais aprofundada sobre esse tema link na descrição
aí então primeira coisa que a gente tem que entender que Java é uma linguagem orientada a objetos outra coisa Java não possui ponteiros tá não permite a manipulação direta de endereço de memória Como ocorrem outras linguagens como ser por exemplo tá então segundo ponto não possui ponteiros não Permite a manipulação direta de endereço de memória já também possui um mecanismo que é para gerenciar a memória que é o gabard collector tá traduzida que é o coletor de lixo beleza é um mecanismo que vai ali é liberar o desalocar espaços de memória de acordo com o
funcionamento do sistema com os fatores que ele leva em consideração tá então o garbage Você pode encontrar Isso no concurso em inglês ou em por traduzido tá inglês é garbard collector é o mecanismo que vai limpar aqueles dados que estão há mais tempo na memória que não estão sendo utilizados então é um mecanismo de gerenciamento de memória quarto ponto Java também possibilita trabalhar com multi trading é normalmente a gente tem no sistemas Principalmente um sistema síncronos a gente tem uma uma comunicação com uma Linha de execução só Beleza então o cliente ele faz uma requisição
para o servidor o servidor processa busca um dado alguma coisa e retorna isso isso tudo de forma síncrona tá numa linha de execução numa Trend uma trade de execução o multitrading ele permite através da linguagem de aba A gente trabalhar de forma assíncrona em que você um elemento um participante do sistema é Um participanteado do sistema ele pode enviar uma requisição e ele pode efetuar outras operações sem ter que ficar ali esperando uma resposta daquela requisição que ele fez tá legal então ele permite essa comunicação assíncrona que através de multi trading várias múltiplas linhas de
execução simultâneas beleza é outra característica da linguagem já Independente de plataforma Claro porque A linguagem de programação a gente vai vai codificar em linguagem Java E aí você através de um compilador é o javaque tal compilador Java ele vai compilar esse código para uma versão intermediária tajava uma linguagem com pilada então ele vai compilar isso para um formato intermediário que é chamado de byte coach Ok E aí depois vai ser feita a leitura interpretação Dessa desse código compilado tá então a gente tem um arquivo Java ele vai ser compilado vai gerar uma linguagem intermediária e
essa esse formato intermediário vai ser lido executando que foi definido no sistema e por conta disso ele é independente de plataforma então tem o Java instalado ele vai funcionar pode ser então um sistema Windows Linux iOS qualquer outro sistema ele é Independente de plataforma o Java possui também o mecanismo conhecido como Java virtual Machine máquina virtual Java que é o cara responsável pela interpretação dos bitecodes que eu falei assim mano tá então quando você vai instalar o Java você tem que instalar o compilador Java e também você tenha a máquina virtual Java para fazer interpretação
do código compilado e já ela também permite o Tratamento de exceções como que se dá o processo de compilação e interpretação na linguagem já vamos entender alguns conceitos nós temos primeiramente a execução o que que é execução na execução a máquina virtual geada ela vai interpretar o programa em tempo de execução ela vai pegar o arquivo ponto Classic codes e vai fazer a leitura a interpretação daquele código executando foi definido no programa tá então isso Ocorre em tempo de execução o que que é tempo de execução é o período em que um programa permanece em
execução quando você manda através de um comando executar um programa X Java ele vai iniciar ali o período de execução e vai encerrar de acordo com que foi definido no código fonte tá tem alguns fatores que podem aí levar ao encerramento pode ser um código que começa e termina tem um final Definido ali e pode ser um outro que vai ficar em execução ao longo do tempo então esse enquanto ele tá em execução a gente chama isso de tempo de execução tempo de compilação é o período em que o código é compilado para gerar o
programa legal como eu falei a gente tem inicialmente o código feito na linguagem já ele vai ser compilado através do compilador de água e esse tempo de compilação esse período é conhecido como tempo de compilação Compreendendo melhor esse processo de compilação e interpretação nós temos aqui um fluxograma digamos assim uma representação de todo o processo nós temos aqui um arquivo Teste Ponto Java que é o código fonte escrito em Java ele passa por pelo compilador javaque e o qual geram o código intermediário com a extensão ponto Class tá então lembre-se de lembre-se disso a Linguagem
intermediária que é gerada depois da compilação no Java ela tem extensão ponto Classic codes então ele gera um arquivo de mesmo nome só que com a extensão ponto classe depois ao ser executado esse arquivo ele é passado para o a máquina virtual Java que vai tem ali três componentes né O classlowder que vai carregar a dinamicamente as classes a gente tem também ação do verificador de byte code que vai Garantir que que o código ele está adequado para ser executado e não vai gerar nenhum tipo de quebra na no interpretador nenhum problema e temos também
a ação do compilador Just in Time compailer que é responsável por otimizar a execução a performance de aplicações baseadas em Java E aí ele vai gerar o código na linguagem Nativa do sistema Operacional como resultado ali para o cliente Qual é a sintaxe de um programa escrito em Java todo programa ele deve ter um nome de classe igual ao nome do arquivo então Ó aqui embaixo nós temos uma classe chamada Men essa que tá aqui em azul claro então a Public Class Man como é que a gente define uma classe A gente vai usar a
palavra-chave Class e depois a palavra-chave Class Você tem o Nome da classe Lembrando que normalmente ele por padrão ele começa com a primeira letra em maiúscula tá então aqui Men é o nome da classe e o nome do arquivo também vai se chamar esse Public diz respeito à visibilidade dessa classe tá então que é uma classe pública ela pode ser acessada de fora de outros contextos e não somente de dentro da própria classe tá então a classe pública e o nome da classe é Man E aqui as chaves Delimitam o início e o fim da
classe Ok dentro da classe nós temos o método bem o método Man Ele tá aqui delimitado em laranja tá e nós temos aqui as palavras-chaves Public estética voidman o void nos diz que esse método Ele não retorna nada é o método tá aí o método Professor o que que é o método o método é muito semelhante as funções em Java Script por exemplo tá em Alguns em alguns quesitos como por exemplo uma função ou método tem ali um bloco de código que vai ser executado quando esse método foi invocado tá então o método ele não
vai ser executado de forma automática com algumas exceções Tá mas de forma geral ele precisa ser invocado para ser executado assim como a função Então dentro dele você tem código que vai ser executado quando ele for chamado aqui no caso o nome do método é O Man tá é esse último nome aqui antes dos parênteses também ele é void ou seja ele não retorna nada se você olhar aqui dentro ele só imprime através do System alto print Elene a string hellou o ouro tá ele Imprime uma um texto ele vai exibir um texto e é
no log do sistema tá então ele não retorna nada então por isso que a gente tem aqui o void e ele é um método é público também e estático tá aqui entre parênteses a gente tem os argumentos que São os parâmetros que são passados para o método quando da execução dele então aqui tá falando que esse método pode receber vários várias Strings tá que vão chegar aqui através da palavra chave AX Ok representando os argumentos então Ó a classe é bem e tem um método como eu falei todo o programa já aba tem que ter
um método principal chamado Men que é que vai inicializar a execução do programa é a Partir dele que a execução do programa começa tá esse executado de forma automática bacana Esse é um é uma exceção assim como os métodos construtores momento oportuno a gente vai falar sobre isso bacana pessoal então lembra-se disso tem que ter o método Man comentários como é que a gente faz para definir comentários em Java Pode parecer uma coisa simples mas já vi algumas questões em concurso cobrando isso como É que se faz o comentário na linguagem x ou Y então
só a fins de conhecimento para você comentar uma única linha você usa o barra barra para você comentar é mais de uma linha você quer comentar um bloco de código ou de texto quer fazer uma documentação algo assim você pode usar aqui o barra asterisco no começo e no final asterisco barra Beleza então aqui embaixo a gente tem é todo esse código comentado que tá aqui em verde variáveis um assunto muito importante é Que vai nos capacitar trabalhar com a linguagem e armazenar dados ou uma variável é um espaço em memória para armazenar valores Então
primeiramente a gente tem que saber isso o que que é uma variável é um espaço na memória para você armazenar um valor um dado que vai ser utilizado Possivelmente é posteriormente né em outro é logo em seguida E aí nós temos dados primitivos e não primitivos O que são os Dados primitivos são tipos de dados que já estão definidos na linguagem por padrão para a gente utilizar então nós temos alguns tipos aqui o índice é que é para trabalhar com números inteiros sem casa decimal a gente tem o float que é para trabalhar com números
com casas decimais pontos flutuantes né o Double que também é igual é semelhante ao float só que ele tem uma capacidade maior de armazenamento o quanto que você vai conseguir armazenar de dado na variável Com cada um desses tipos aqui na coluna direita eu já tenho os valores tá isso aqui é um quadro que eu peguei lá da do site W3 skulls você mesmo pode ir lá e pode dar uma conferida então por exemplo o índice ele permite o armazenamento de até quatro bites na memória 4 também o Double é 8 então para números muito
grandes que não são comportados aí que não cabem em um float você pode usar o Double ou o boleano que interessante Tá o boleano é um boleano né aquele verdadeiro ou falso ele só permite dois tipos de valores verdadeiro ou falso como só permite esses dois valores ele usa um bit E aí você pode usar o zero ou um pronto OK então ele não precisa mais do que um bit para indicar se é assim ou não e a gente tem outros também tá pessoal aqui vocês podem consultar podem também lá no próprio site da linguagem
de aba na Documentação e olhar Mais especificamente todos os tipos disponíveis tipos não primitivos de variáveis ó são chamados tipos de referência e por que que eles têm esse nome porque ele se referem a objetos Como assim ó nós vamos ver aqui embaixo Que tipos não primitivos nós temos aqui uma string E aí você vai observar que a string ela permite armazenar texto tá mas você vai Observar que ela o s é maiúsculo tá isso aqui é do jeito que é escrito mesmo o s é maiúsculo porque isso aqui é uma classe então se você
observar os tipos primitivos eles são escritos aqui ó com letras é tudo minúsculo tá a primeira letra minúscula também as classes elas são elas possuem a primeira letra maiúscula então uma string é uma classe mas é uma classe que ela já vem na linguagem Pronta para a gente utilizar tá E ela serve para você armazenar textos maiores então se você por exemplo vai fazer um formulário em que o usuário tem que digitar o nome completo dele por exemplo você vai ler aquilo lá da interface né esse dado vai chegar no servidor o servidor pode armazenar
temporariamente em uma variável do tipo string Beleza então esse trem que ela vai conseguir comportar esse texto que foi digitado pelo usuário a gente tem uns arreios Também que são estruturas em que você pode colocar vários elementos Você pode ter uma rede Strings uma rei de números uma rede de objetos entre outros tipos e as classes tá E por que aqui esses tipos primitivos são chamados de tipos de referência Como assim ele se referem a objetos então voltando a orientação objetos nós temos a classe Então vamos nesse exemplo do formulário que eu falei Imaginem um
formulário de cadastro de cliente cliente chegou colocou seus Dados pessoais e aí isso vai num formulário HTML por exemplo ou feito na própria linguagem Java em uma interface gerada pelo pelo servidor é poderia se fosse Java poderia ser uma interface através do JSF mas você tem uma interface em que o usuário digita os dados E aí ele manda esse formulário para o servidor que vai atender a requisição numa porta específica e vai fazer alguma coisa com aquele dado nesse caso ele precisa ler Os dados do input que vieram né através do método http e nem
aqueles dados colocar em um objeto e persistir esse objeto no banco de dados Esse é um processo tradicional Tá mas o que que é o objeto então nessa situação é possivelmente o programador ele vai definir uma classe para cliente para armazenar os dados do cliente então lá nessa classe ele vai ter propriedades como o nome é CPF data De nascimento sexo e aí vai ok então vai ler esses dados e ele vai colocar em um objeto que vai ser criado a partir da classe entendam a classe como uma forma uma fábrica para se criar objetos
com a mesma característica então conceito de classe é aquele semelhante Aquele é que a gente já estuda na Biologia tá então são um conjunto de elementos que possuem características em comum então uma vez que você definiu a classe é cliente Dessa forma que eu falei você vai instanciar um objeto a partir daquela classe um objeto Limpo digamos assim sem estar preenchido ele tem os campos nome CPF e tudo mais mas ainda não foi preenchido Então você a partir daquela Classe A partir daquela forma um objeto e aí você lê os dados que que vieram da
requisição e você pega esse por exemplo o nome e coloca lá na propriedade em nome do objeto pega o CPF coloca na propriedade CPF do objeto Então você vai por pulando vai preenchendo o objeto quando ele tiver todo preenchido você pega ele e é persiste é você pode utilizar aí no Jaba o JPA para fazer a persistência desse dado no banco Ok então os tipos primitivos eles referem se referem a objetos que foram criados a partir de classes olha aqui alguns exemplos ó a gente tem aqui um número é uma variável mais num Que é
inteiro que a ínte tá vendo Então e tá sendo atribuído a essa variável o valor cinco o igual é um operador de atribuição Então mas não recebe cinco aqui ó mais forte num aqui é um número float então foi definido o número float que está sendo armazenado nessa variável observem que em Java as variáveis elas são fortemente tipadas né então quando você declara variável você tem que indicar o tipo dela é diferente do Java Script e outras linguagens aqui no Java você tem que falar ó essa é um inteiro essa variável é um float é
ser um chá que que é o chá é quando você quer armazenar apenas um único caracter textual Então tá aqui ó de chá boleando true ou falso aqui ó my boo né tá recebendo o valor true string observem que a definição da string pessoal string com S maiúsculo tá my Tex recebeu hello outra coisa como é que eu posso fazer Para declarar muitas variáveis aqui em cima tem alguns exemplos ó eu tenho que variar as variáveis x y e z então para cada uma eu fiz a declaração né entre x e atribuir o valor cinco
valor seis valor 50 e depois utilizei aqui o System out print ali né que tá sendo utilizado aqui para imprimir a soma dessas três variáveis Então está sendo somado aqui o valor de X o valor y e o valor Z então 5 + 6 + 50 Vai ser exibido aqui né então vai dar 61 esse exemplo aqui eu peguei lá do dado três escudos tá pessoal inclusive Recomendo o estudo através desse desse site site muito bom para estudar linguagem de programação de banco de dados entre outras coisas então aqui você tem três linhas para declarar
três variáveis aqui embaixo tá mostrando uma forma simplificada de você fazer isso tudo em apenas uma única linha essas declarações né então aqui ó Você coloca o índice o tipo do dado então aqui no caso as três variáveis não são do mesmo tipo são então você pode colocar tudo na mesma linha ó 20 x vai receber cinco vírgula Y recebe 6 recebe 50 Por que que é importante saber isso pessoal a gente já viu que na em concursos o pessoal gosta muito de cobrar trechos de código o funcionamento de trechos de código Inclusive a gente
vai ter aí é um vídeo só com questões de Java tá resolvendo esses algoritmos Esses códigos e aí para você ter um compreensão melhor disso você tem que entender essas diversas formas através das quais o código o Java pode aparecer tá Então essa é uma forma e quando você olhar isso no código isso não vai te causar estranheza você vai entender que Ah beleza aqui eu tenho três variáveis que são do tipo inteiro e cada um tá recebendo um valor específico bacana qualquer dúvida pode deixar o Comentário aí outra coisa um valor para múltiplas variáveis
você consegue definir o mesmo valor para várias variáveis então que por exemplo eu tenho que a Declaração das variáveis x y e z e na segunda linha eu tô falando aqui ó que x vai receber Y vai receber Z e z vai receber 50 então todo mundo aqui recebe 50 tá Então essa é uma forma de você atribuir o mesmo valor para mais de uma variável Caso seja o desejado então aqui O que vai ser impresso vai ser o valor 150 operadores pessoal nós temos aqui alguns grupos de operadores na linguagem Java que é a
compreensão desses operadores é fundamental para você conseguir resolver os códigos que caem nos concursos tá naqueles conjunto naquele tanto de código que aparece sempre tem algum operador Então você tem que saber é os principais operadores Então vamos entender eles a gente tem aqui alguns Grupos principais os operadores aritméticos de atribuição de comparação lógicos e os bit habite eu fiz uma questão aí que envolvia isso né uma operação operadores aritméticos pessoal nós temos o operador de adição que é o mais tá isso aqui é um quadro que foi tirado lá do site W3 scus tá todo
em inglês e eu não faço questão de traduzir porque é em programação primeira coisa quem trabalha com Programação tem que é natural ter que aprender o inglês e depois é em linguagens em provas de concurso diversas vezes eu já vi caiu os termos em tecnologias na no formato original em inglês então a gente precisa desenvolver o inglês também nessa jornada seja para concurso seja para trabalhar no mercado privado então a adição é representada através do mais tá então que no caso um exemplo x + y você faz dessa forma para somar dois valores Então aqui
Possivelmente É possivelmente não essas variáveis foram declaradas né x e y e elas receberam algum valor e aqui tá sendo feito a soma desses valores subtração o menos multiplicação asterisco divisão é o Barra então aqui ó x dividido por y o módulo é o sinal de porcentagem tá e o que que é o módulo professor é o resto da divisão o resto da divisão tá Então você consegue extrair o resto da Divisão através do módulo Ah eu quero resultado da divisão é o Barra aí eu quero o resto da divisão o módulo que é sinal
de porcentagem já vi questão também os solicitando empregando esse operador de modo outra coisa que é muito comum por exemplo operadores de incremento ou decremento o mais mais basicamente em quase todo for laço de repetição do tipo foco Você tem o mais mais né A maioria deles então que quando você observar mais mais Em seguida O que que significa incremento então ele aumenta o valor aumenta mais um na variável então aqui ó vai vai se atribuído vai ser acrescido mais um na variável x o menos menos é o contrário disso o inverso disso né ele
vai decrementar um tá então se você observar mais mais é um incremento menos menos decremento de um tá sempre o valor Vamos falar agora sobre os operadores de atribuição que são o mais comum deles o igual tá ou igual é o principal operador De atribuição mais utilizado que serve para você é dar valor a uma variável então que por exemplo x recebe 5 tá então o valor de X vai ser o valor que vai ter armazenado em x será 5 Às vezes você pode encontrar dessa forma mais igual que significa aqui por exemplo x +
= 3 ou seja x vai receber x + 3 ou seja quando você tem mais igual você tá somando ao valor que já existe naquela variável Então x + = 3 é o mesmo que x vai receber x ou seja o valor que já tem x + 3 então é como se fosse um incremento de três tá você tá incrementando o valor três ao valor já existente o menos igual é o contrário disso então decremento tá então que tá decrementando três no valor de x o asterisco igual você tá multiplicando o valor de X por
3 então x asterisco igual 3 é o mesmo que x vai receber x vezes 3 tá O Barra igual é a divisão então você tá pegando o valor de x e dividindo por 3 o porcentagem igual é o módulo né então você tem aqui ó x vai receber x módulo 3 tá aqui embaixo nós temos os operadores lógicos que esse sinal de comercial igual e também esse essa barra que esse Pipe né não lembro se a gente faz um Pipe isso aqui é um operador Lógico tá o e o ou Você Possivelmente vai conhecer o
operador lógico Java ou de outra linguagem também usando ee né os dois símbolos de comercial a gente já vê logo à frente e as duas os dois pipes né as duas barras como ou mas a gente tem o emprego de apenas um único símbolo desse que é o operador lógico em nível de byte tá o chamado Beach Ice então por exemplo aqui ó o e igual então x e = 3 é o mesmo que x vai receber x E3 Então vai ser feito aqui uma operação lógica com números inteiros Possivelmente x aqui é um inteiro
também tá então em nível de bit então para você conseguir compreender o resultado disso por exemplo uma questão boa para cair no concurso né qual vai ser o resultado disso então vamos supor que por exemplo que x é igual a 10 tá e y é igual A 12 Ok E aí você tem a seguinte operação X x e y qual vai ser o resultado disso né quanto que isso aqui vai dar Então vamos converter primeira coisa o x como é que fica 10 binário né x e binário então 10 em binário é o mesmo que
a gente tem um vídeo aí só com a questão resolvendo uma operação no nível de bit tá mas aqui por exemplo Você Precisa Converter isso para para binário Então como é que eu faço 10 ó lembra que a gente tem os valores né você tem aqui por exemplo vou representar aqui oito casos tá dois três quatro cinco seis sete oito então um byte né não é 8 bits então é aqui no primeiro bit ou o a primeira casa à direita aqui equivale a um tá então isso aqui equivale a um a segunda casa deixa eu
colocar aqui para você entender melhor Aqui é a segunda casa aqui equivale a um aqui equivale a 2 aqui equivale a 4 aqui a 8 tá como é que você a gente sabe esses valores pessoal é só é 2 elevado a zero dá um dois elevado é a dá 2 2 elevado a 2 dá 4 2 elevado a 3 da 8 e assim sucessivamente então que você tem o que eu vou continuar aqui O 16 aqui o 32 aqui o 64 e aqui o 128 tá então o primeiro valor 128 ou 24 aqui o segundo
32 aqui nesse terceiro zero 16 aqui e aí assim sucessivamente tá então é para números pequenos a gente pode se concentrar mais nesses quatro Bits à direita Então você para agilizar o seu tempo no concurso você já desconsidera esses à esquerda E aí como é que eu sei Professor Quanto que é 10 em binário ora é só você somar os valores que você Precisa para dar 10 então preciso do que do 8 aí onde foi esse valor você coloca um tá um Beat de ativação então um então 8 + 2 né então a representação do
10 em binário vai ser quatro bites 000 E aí um zero um zero os quatro Pizza à direita Ok então isso aqui é o é o 10 e o 12 Quanto que é o 12 em binário mesma coisa né Vamos mudar aqui vamos usar esse exemplo ó para dar 12 a gente vai precisar do Oito mais quatro e aqui no dois não precisa né então você vem vem pegando o valor mais próximo da esquerda para direita o maior valor mas que não vai passar né tem que dar o valor exato então Ó 12 para chegar
no 12 eu preciso do 8 e preciso do 4 então 8 + 4 dá 12 então ó resultado vai ser os quatro Bits à esquerda 1100 aqui é a representação né e qual Que é o valor e quanto que é eu fazendo aqui a operação lógica do e o e para retornar para retornar um os dois valores tem que ser um OK qualquer outra disposição vai ser zero então zero zero tá zero é aqui no caso um zero tá zero também tá aqui no 1 00 1 e um pronto o restante aqui é tudo zero
né a gente já sabe que é zero logo Quanto que dá isso aqui é só a gente ver aqui ó Isso aqui isso aqui essa posição aqui vale a 1 É segunda posição equivale a 2 3 4 que é 8 né então equivale a 8 Tá e isso realizando o usando operador lógico e tá pessoal o e Comercial tá do a condição e né então lembra lembre-se disso então quando tiver utilizando operador lógico e nível de bit só vai ele só vai retornar um Quando os dois valores forem Um qualquer outra disposição vai ser zero
outra opção é o esse cara aqui né então quanto que dá isso aqui utilizando os mesmos números lá de cima ok ó pessoal no ou é o seguinte se tiver um ele só vai retornar zero Quando os dois números forem zero qual que é outra situação Vai ser um então aqui ó um e um vai ser um um e zero vai ser um um zero zero um vai ser um né um e zero vai ser Um também 00 vai ser zero e quanto que dá isso aqui em decimal é só a gente pegar ó lá
ó tá vendo ó 111 né digamos assim então a gente dá direito a Pesqueira tem um 011 então ó da 8 + 4 + 2 você vai somar só Onde tiver um então dá 14 né então 8 + 4 12 + 2 dá 14 então a questão se quer em concurso para vocês acertarem tá pessoal isso aqui são Operadores lógicos em nível de bit saibam disso e nós temos aqui esse sinal de dois sinais de maior que igual e dois sinais de menor que igual tá isso aqui é um operador de shift ou de troca
de transposição então que no caso ó X é maior igual a maior igual é maior que perdão né Maior Que duas vezes igual três é o mesmo que x vai receber x maior que maior que três aqui nesse caso também vai ocorrer uma operação em nível de bit tá de Transposição Então quando você vai pegar um número binário daquele e por exemplo Vamos fazer um exemplo aqui ó considere esse exemplo aqui ó Então vamos supor que a gente tem a seguinte situação x maior é maior que maior que é dois tá quanto que vai dar
isso aqui pessoal isso aqui a resposta basicamente essa aqui é simples ó vamos supor que o x Quanto que vale o x o x Vale ali ó 10 10 Né pegando só os últimos quatro bits ali e quando você coloca 10 10 Vamos colocar totalidade aqui para vocês entenderem melhor ó Isso aqui é o 10 tá pessoal quando você coloca ó x maior que maior que 2 você tá falando que vão ser acrescido dois zeros aqui da esquerda para direita então Ó você vai colocar mais dois zeros e vai excluir Dois zeros da direita tá
pessoal E aí se você tiver da de outra forma assim ó 10 10 e o sinal for assim você vai vai ter inclusão de dois zeros do lado direito então aqui ó 00 e vai tirar os dois da esquerda tá então aqui tem uma transposição de bits Ok só para fins de conhecimento operadores de comparação nós temos aqui o igual igual esse aqui é para quando a gente quer Verificar se um valor é igual ao outro então que no caso ó x é igual a y o valor de x é igual ao valor de y
então para isso você usa igual muito comum uso é em condições né Na hora de verificar uma condição específica a gente tem o diferente não igual que é o exclamação igual tá então aqui no caso tá verificando se x é diferente de Y valor de x é diferente de y Você tem o maior que da mesma forma que na matemática Então aqui tá verificando se x é maior que Y aqui embaixo se o X é menor que Y você tem ainda o maior ou igual tá então X é maior ou igual a y se for
ele vai retornar true se não ele vai retornar falso né falso e temos também um menor ou igual então X é menor ou igual a y os operadores lógicos tá a gente viu aqui agora pouco o operador lógico em nível de bit e nós temos operadores lógicos envolvendo duas duas Declarações boleanas então aqui por exemplo a gente tem o e tá o operador lógico e que retorna ele só retorna a verdade true quando as duas condições as duas declarações ao redor deles são verdadeiras então que no caso aqui nesse caso é só essa declaração toda
só vai retornar true as duas condições forem verdade a primeira condição do lado esquerdo do e aqui tá verificando se o X é menor que Y vamos Vamos imaginar que x seja 2 então 2 é menor que 5 sim true I vai verificar a segunda condição dois é menor que 10 sim também 2 menor que 10 Então vai retornar true aqui e true aqui e se as duas condições forem true ele vai retornar verdade agora se por exemplo o x a segunda condição fosse verificando se x é maior que 10 e aí aqui ele é
retornar falso né então na primeira ele retornar a verdade e na segunda ele retornar falso então E falso ele vai retornar falso tá o e só vai retornar a verdade quando as duas condições forem verdadeiras então em algum exemplo prático que você quer verificar se uma condição a é verdadeira e uma condição B também é verdadeira você vai usar operador lógico e então por exemplo esse esse cliente ele tem mais de 30 anos de idade Ele tem filhos Então são duas condições que você quer verificar você pode usar operador lógico e Temos também operador lógico
ou que ele ele para que ele retorne verdade basta que uma das condições sejam seja verdade então por exemplo se ele tiver filho é maior que 30 É mas não tiver filhos então aqui na primeira ele retornou verdade true e na segunda ele retorno falso não importa se uma das condições forem verdadeiras ele vai retornar verdade então o operador lógico Ou serve para isso para quando você quer verificar uma Situação em que é ao menos uma das condições É verdade ok quer verificar se ao menos uma das condições É verdade você vai usar o ou
que é esse essas duas barras aqui tá na vertical a gente chama de pai também então que no caso ó vamos supor que x seja dois é dois é menor que que cinco sim dois anos quatro assim também então suas duas foram Liberdade beleza retorna a verdade também ele só vai retornar falso se as duas condições forem falsas Temos também operador lógico de negação que é exclamação tá que ela que ela basicamente inverte o resultado então por exemplo ó retorna falso se o resultado é true então se a condição toda retorna true ele vai é
negar isso ele vai retornar falso ele vai inverter o resultado se retornar falso ele vai retornar true Ok então isso aqui é operador lógico de negação Vamos falar agora sobre as condições Então quando a gente tá desenvolvendo um sistema uma situação comum com a qual a gente tem que lidar é verificar condições verificação condição x aconteceu uma condição Y então para isso nós temos aqui algumas opções nós podemos utilizar o if tá o hífen é o nosso operador para verificar se uma uma condição específica ocorreu ou não é verdade ou não para então decidir pela
execução ou não de um Código específico então nós temos o hífero ele só executa o código se a condição for verdade então isso é si né se Tal condição for verdade então voltando naquele exemplo lá se o usuário o cliente tem mais de 80 anos vai retornar Troll e vai executar o que foi especificado para para essa condição o elsy é o sinal né senão então ele vai executar o código se a condição especificada no IFF for falsa tá o Elson ele funciona em conjunto com o if Então A gente tem um if ele vai
verificar uma condição se for verdade ele vai executar o que foi definido dentro do IF embaixo a gente vai ter o Elson ou seja se essa condição do IF for falsa a gente vai ter uma condição uma específica é no else então não tem mais de 30 Então nesse caso ele vai executar outro código para essa situação aqui por exemplo ó eu tenho aqui a declaração de uma variável chamada time Tá OK ela é do tipo inteiro recebe um valor tá recebendo aqui através do operador de atribuição o 22 então time é igual a 22
e aí temos o if para verificar uma condição a condição ela vai aqui dentro dos parênteses tá que tá verificando se o tempo é menor que 12 Quanto que é o time 22 22 é menor é que 12 falso né Não então ele não vai executar o código que Estava especificado aqui para essa condição Se o time fosse 10 ia ser verdade 10 é menor que 12 sim Aí Ele é imprimir o resultado bom dia e não ia verificar as outras condições isso é executar Bom dia tá mas aqui o time é 22 então ó
22 é menor que 12 não então vai retornar falso tá essa operação essa verificação toda vai retornar falsa e aí ele não vai executar aí ele vai entrar aqui nessa segunda verificação que é o elsie if então é o elci você tá fazendo uma segunda verificação que é a Seguinte ó o tempo o time é menor que 18 22 é menor que 18 também é falso então ele não vai exibir Boa tarde ele vai para o élce quando nenhuma das condições anteriores nessa estrutura for verdade ele vai entrar no ELS você sempre vai executar o
que tá no Élcio tá caso você tem o Elvis se não tiver o El se não mas tenho élce o Élcio é quando se nada der certo se nada for verdade executa ela ou seja não é menor que 12 Não não é menor que 18 também não então vai para o Elson ou seja ele vai exibir boa noite tá E essa aqui é algo Lógico né ou seja se não for menor que 12 e não for menor que 18 logo é maior igual a 18 então já é noite boa noite para esse mesmo exemplo que
eu acabei de dar a gente tem uma uma opção é que é o operador ternário uma forma de você simplificar isso usando menos linha de código tá E dá até um charme a mais e muitas vezes na Questão ela pode aparecer dessa forma a questão de concurso é a mesma coisa foi definida aqui quer dizer tem algumas diferenças aqui mas é semelhante só que feita através de uma de uma sintaxe diferente então ó eu tenho aqui uma variável tempo igual a 20 Eu tenho um resultado que vai que é do tipo string ou seja ele
vai armazenar um texto e eu tô falando aqui ó O resultado vai Receber alguma coisa O que que ele vai receber pessoal nós temos aqui operador ternário para doutrinário ele funciona da seguinte forma ele tem aqui antes da interrogação a condição a ser verificada e essa condição vai retornar true ou falso se essa condição for verdade ele vai retornar o que vem logo depois da interrogação ou seja o que que tá sendo retornado aqui a string Professor Como é que você quer uma string pelas aspas tá aqui na string a gente usa aspas para definir
o texto o Number que é o número não precisa de aspas então aqui vai ser retonado vai ser retornada string Bom dia e atribuída aqui ao resultado tá se o tempo for menor que 18 mas não o tempo é igual a 20 então 20 é menor que 18 falso então se a condição antes da interrogação for falsa ele vai retornar O que vem depois Dos dois pontos pessoal que que vem depois dos dois pontos outra string olha aspas aqui ó Boa noite então o que vai ser armazenado aqui em resultado é boa noite então é
como se fosse resultado recebe Boa noite e vai imprimir Boa noite ok então isso aqui é uma condição ternária operador ternário ele tem essa característica essa sintaxe tem a condição a interrogação e aí você tem aqui é os dois pontos do lado esquerdo Dos dois pontos você tem o que vai ser retornado se for verdade do lado direito é se for falso tá então imaginemos que o tempo seja igual a 10 10 é menor do que 18 Sim então ele vai retornar o que o que vem logo depois a interrogação bom dia se não vai
retornar boa noite beleza isso aqui é o operador ternário o suíte o Switch é outra opção que nós temos para verificar condições tá através do suíte você consegue verificar a ocorrência exata de valores Específicos não por exemplo aqui ó eu tenho aqui falando que é o dia é igual a 4 né dei quatro então que a gente tem aqui a representação de dias da semana em inglês tá E aí a gente usa dessa forma suíte a condição o valor que está sendo verificado abre Chaves e aí você tem aqui as verificações tá então assim táxi
é essa suíte dentro do parênteses a condição então que no caso tô passando o valor quatro né e ele vai verificar é se o valor é Igual ao que tá aqui então Ó aí para isso a gente tem aqui o a palavra chave Case então Case 6 ou seja se dia foi igual a 6 ele vai retornar o quê today is saturday né então se eu não tiver enganado é sábado né então te dei e saturday E aí através do Break o Breaking serve para pular fora quebrar a verificação tá então ele vai imprimir isso
aqui e já vai Ele não vai verificar mais se é 7 ou qualquer outra coisa então aqui ele vai se vocês ó Case 6 ele vai imprimir essa mensagem e já vai logo em seguida através do Break sair dessa condição sem verificar mais nada Ok ele vai continuar a execução depois do suíte né após o Switch Então mas aqui no caso é quatro então Case 6 não falso então ele não vai imprimir isso aqui aí vem para baixo Case 7 é igual a 7 também não então não vai imprimir isso se nenhuma das condições forem
verdade ele aqui no caso Ele tem aqui Um defu que é para especificar um padrão então se não for nenhuma das das é como se fosse um elsea né se não for nenhuma dessas condições vai poder full o padrão Beleza então ele vai retornar isso aqui ó looking for to the weekend se fosse sete o valor ele ia entrar nessa verificação caso 7 ele imprimite o dei sandei né é domingo beleza pessoal Então esse é o suíte Essa é a sintaxe é importante vocês Compreenderem aqui como ela funciona tá suite a condição e aqui é
no caso em que você sabe os valores específicos a serem verificados não são muitos né porque se você for fazer case para 100 valores ficam enviado né mais fácil usar o hífen mesmo mas se for verificar duas três condições o case é legal valor específicos né laços de repetição nós temos em Java algumas opções para definir laços de repetição e o que que é Um laço de repetição alguns códigos a gente precisa que ele sejam reelectados por determinada quantidade de vezes então eu preciso que determinado código seja executado enquanto uma condição for verdade tá ou
enquanto uma condição for falsa ou precisa executar uma quantidade de código n vezes então para essa situação você pode usar laços de repetição então eu tenho aqui ó o Will É uma opção Para laço de repetição como é que ele funciona você usa a palavra reservada Will E aí você dentro do parênteses você vai especificar condição E aí na Chaves você delimita o código que vai ser executado enquanto a condição for verdadeira então vai o significa enquanto né então qual que é a condição enquanto e com menor que 5 Quanto que vale zero Então vamos
imaginar a primeira ocorrência a primeira execução Zero é menor que 5 true verdade então ele vai imprimir vai vai imprimir o quê o valor de 0 vai mostrar o zero na tela e ele tá fazendo o que aqui ó e mais mais ou seja ele tá incrementando E então ele executou a primeira vez imprimir o zero aí ele incrementou e mais mais então e agora não é mais ela é um porque aí mais mais é o mesmo que ir recebe e mais um então aí vai verificar de novo para saber se ele executa o que
tá dentro do aio ou não um é menor que 5 Sim então ele vai imprimir um e vai somar mais dois segundo execução aí agora o i vai somar mais um né então agora o i é 2 2 é menor que 5 sim vai imprimir o 3 e vai somar mais um três é menor que 5 Sim então ele vai imprimir o 3 né vai primeiro três e vai somar mais um não quarta execução aí ela verificar quatro é menor que 5 sim né então ele vai executar de novo vai imprimir o 4 e vai
somar mais um Então vai verificar 5 é menor que 5 não Falso então aí quando a condição for falsa ele pula O alho e continua execução após o laço o aio tá então ou seja aqui nesse caso ele vai imprimir dos valores é do zero ao 4 né vai do meu 012 o 3 e o 4 Ok aí ele não imprimiu o restante porque a condição foi falsa depois disso e ele não mostrou o valor cinco legal pessoal Então esse é o alho ele executa um bloco de código enquanto a condição for verdadeira O aio
pessoal do alho é muito semelhante ao Aion é diferença aqui no Aion ele só entra ele só executa a primeira vez se de cara a condição for verdade então é verdade um é menor que 5 Sim então ele Executa se não for ele não executa nenhuma vez o do Aion ele executa pelo menos uma vez por que Professor porque a verificação da condição ocorre no final então aqui no caso o ir receber o zero e aí ó Do Chaves né e o Aion depois com a condição então o que que ele vai fazer ele já
vai imprimir de cara que o i vai imprimir o zero e vai somar mais um então ele vai fazer a verificação quando no final e é menor que 5 Sim então ele vai executar de novo então observem que o do ion é praticamente igual ao Will né A única diferença é que o do Aion a verificação ocorre no final então ele vai executar o código pelo menos uma vez Se atentar Isso numa hora de resolver uma questão de concurso tá e professor Qual que é a melhor forma que Aquela quantidade de código que às vezes
assusta se você tiver tempo né aí a questão de usar estratégia a melhor estratégia Eu recomendo você para as questões mais rápidas aquelas que é ou não é sabe não sabe então mas direto ao ponto e aí você deixa essas mais mais trabalhosas para o final numa dessa aqui você melhor forma É você pegar o lápis e você ir rasurando simulando a execução do código passo a passo tá E aí claro que a medida que você vai estudando adquirindo experiência programando também você consegue resolver algumas questões sem ter que simular tudo do cada linha de
execução né mas a forma mais básica é essa simular cada linha de execução ok então espero que tenham compreendido a diferença do Aion para o Aion Verificação já no início no do Aion a verificação é no final logo ele executa o código pelo menos uma vez terceira possibilidade para laço de repetição é o foco tá é para situações onde se sabe a quantidade de vezes que um bloco de código será executado tanto por exemplo assim táxi é só e dentro dos parênteses você tem aqui basicamente três parâmetros Tá três condições Três condições não perdão três
parâmetros mesmo quais são é eles aqui no primeiro Observe o ponto e vírgula separando esses caras tá aqui na primeira posição você tem a declaração de algumas variáveis tá normalmente a gente tem aqui a declaração de contadores que vão ser usados aqui para verificar a quantidade de vezes que está sendo executado Ok então que no caso tá declarando uma variável do tipo inteira E atribuindo o valor zero a ela então igual a zero aqui no meio depois do primeiro ponto vírgula você tem a condição a condição a ser verificada nesse laço então para ele saber
se ele vai executar Ou não Aqui o código dentro do foco Qual é a condição tá verificando se é menor que 5 0 é menor que 5 sim né E aqui na terceira opção a gente tem o incremento vamos entender a primeira vez A primeira execução vai fazer o seguinte ele vai declarar as variáveis primeira execução então e recebe zero pronto só na primeira e recebe zero aí vai verificar zero é menor que 5 sim aí ele já vai para o código então ele vai imprimir o valor de I que é zero vai mostrar zero
lá no na tela no log ok show aí no final da execução entra essa terceira etapa aqui ó esse terceiro parâmetro que é o incremento aqui no caso está Incrementando mais um né e mais mais ou seja aí recebe I mais um então Ó e agora depois da primeira execução o i não é mais zero é um OK aí ele vem de novo aqui para condição aí na segunda na segunda vez que ele vai executar o código ele não vai declarar de novo e igual a zero tá essa declaração aqui a esquerda é só na
primeira execução então ó agora e é igual a um é menor que 5 verdade então ele vai mostrar um e vai Incrementar mais mais terminou a execução do código toda lá no finalzinho ele incrementa mais um então e agora é dois dois é menor que cinco sim então ele vai imprimir é o valor dois né e assim sucessivamente ele vai que pessoal basicamente imprimir o do valor Zero ao valor 5 0 1 o 2 o 3 e o 4 né perdão do zero ao quatro tá ele vai fazer isso cinco vezes Beleza começou no zero
Por que que vai fazer cinco vezes professor e ele só Exibir o quarto porque o primeiro elemento que ele exibiu foi o zero então na primeira execução e é igual a zero então Ó o incremento só é feito no final então ó zero menor que 5 Sim já imprimiu zero na primeira execução E aí no final ele incrementa mais um entendeu então vai ficar zero um dois três e quatro execução tá imprimindo os valores do zero ao quatro tá já fica me confundi né Fala aí você me confundir 0 1 2 3 4 isso mesmo
beleza então ele vai imprimir do valor Zero ao valor 4 ok pessoal então no fóssil tem que tomar cuidado com isso a condição bem no meio aqui do lado esquerdo você tem a declaração das variáveis que normalmente usadas aqui e a o incremento aqui no terceiro parâmetro depois o segundo ponto e vírgula E lembra que o incremento ele só corre no final tá pessoal depois da execução o Break pessoal o Break serve Para encerrar a execução de um laço ou uma condição atrás do IF por exemplo então aqui no caso ó tem um fó e
igual a zero enquanto o I for menor que 10 e mais mais ou seja a ideia aqui é imprimir do valor vai fazer aqui 10 impressões né inicialmente tá olhando o tá e vai começar do zero Então vai imprimir o 01 o 2 o 3 vai até o 9 né Só que tem um if aqui ó ele então antes de imprimir O valor ele tá verificando ó e é igual a zero se for o que que é para acontecer é para ocorrer um Break tá pessoal é um Break ou seja para ele pular fora do
laço encerrar esse botão do lado tipo acabou beleza é como se o jogo de futebol o dono da bola fosse lá pegasse a bola e fosse embora não acabou encerra aqui então é quebrar tá Break Ou seja quando ele chegar no zero ele vai Vai pular fora do laço Então vamos simular a execução ó primeira execução igual a zero Ok zero é menor que 10 sim tava verificar e é igual a 4 0 é igual a 4 não então ele vai imprimir o zero vai imprimir o zero na tá na primeira execução vai imprimir o
zero aí vai incrementar mais um o ir agora é o ir agora é um então um é menor que 10 sim então é igual a 4 não então ele vai ele vai mostrar um Né vai mostrar o dois vai mostrar o três né zero um dois três e aí quando chegar no quatro ele vai esbarrar aqui ó e quatro é igual a 4 Sim então ele vai quebrar e não vai imprimir o quarto ou seja esse Break não vai deixar que o 4 seja impresso do 4 em diante ele não vai mostrar mais ele vai
encerrar o laço aqui então qual que vai ser o resultado desse desse código ele vai imprimir os valores zero um dois e três tá são quatro execuções com esses Valores começando no zero vai até o 3 quando chegar no quarto ele quebra e pula fora do laço é encerrar na execução beleza claro que na questão de concurso isso cai de forma bem mais complicada mas aqui é só para você entender o conceito Aprendeu agora você pode ir lá a gente vai eu vou fazer uma um vídeo com questões comentadas para vocês sobre esse tema e
Mas você já está apto a tentar resolver pelo menos tá diferente de você Olhar e que quebrei você não sabe nem que é o break agora você já sabe tem Break ele pula fora do laço ou da condição como a gente viu lá no switch nessa mesma linha a gente tem o Continental continue que ele ele não quebra encerra por vez a execução ele pula uma etapa Como assim então nós temos aqui a mesma condição foco ele vai imprimir do zero enquanto isso for menor que 10 ou seja do 0 ao 9 ele vai mostrar
ele vai Incrementar de um em um né vai mostrando o valor direito então vou mostrar o zero um dois o três assim até chegar no nova mostrar o nove também só que ele tem a verificação e quando o i foi igual a 4 ou seja quando chegar no valor 4 ele vai ele falou aqui ó continue O que significa continue Quando ele chegar aqui ele não vai executar o restante do código que tá dentro do laço quando chegar no continue ele ele vai Tipo pular vez daqui ele não executa esse System print LN então ele
não vai exibir o valor 4 quando o if = 4 ele vai executar o continue e ele vai pular para próxima então o igual a 5 né porque vai incrementar aí mais mais e vai ser igual assim resolver Resumindo ele vai mostrar o zero vai mostrar um vai mostrar o dois vai mostrar o três quando chegar no quatro ele vai pular o quatro e vai para o próximo vai para a próxima execução para Próxima interação tá esse ciclo de repetição de código que a gente chama de interação não é interação é interação mesmo Ou seja
que o resultado disso aqui ele vai receber do valor Zero ao valor 9 com exceção do valor 4 porque quando chegar no quarto ele vai pular o restante do código ou seja ele não vai imprimir aqui ó Quem é que tá imprimindo é esse System out print LM Beleza se esse System tivesse antes do IF ele exibir mas não tá depois e por causa do continue ele ele não executa o restante do código e vai para a próxima interação pulando a exibição do quadro Então vai exibir do zero ao 9 mas não o quatro o
valor 4 legal então entenda a diferença do Break para o continue Vamos falar agora sobre a rei pessoal a gente já viu em outras linguagens de programação que o arreio serve para armazenar vários elementos numa estrutura só né Então quando você quer colocar vários elementos em uma única variável você pode usar o arreio como estrutura para conter esses elementos Então como é que eu defino uma rei dessa forma é aqui eu tenho o nome da variável Cars né E ela de qual tipo uma rei de string que tá dizendo que é uma Rei esses colchetes
vazios aqui ó tá então aqui ó string colchetes Carlos ou seja Carlos é uma rei de string então você pode ler da direita para esquerda o Cars é um Arreio de Strings E aí eu tô atribuindo já ele eu já tô populando ele aqui de cara né eu tô preenchendo esse Arreio e como é que eu defino o Arreio de forma literal através aqui das chaves tá pessoal então ó aqui eu tô passando quatro Strings para esse arreio então Carlos vai conter o quê os valores Volvo BMW Ford e mázida Então essas quatro Strings estão
dentro do arrai Cars Observe aqui ó Chaves e a separação dos elementos pela vírgula tá E aí eu tenho aqui um fó que que esse foto tá fazendo então vamos lá igual a zero né vai ser eu tô vendo aqui vai ser o meu contador e igual a zero qual que é a condição para execução do que tá dentro do fórum enquanto isso for menor que Carlos ponto lente lente pessoal é uma propriedade Do Arreio que indica a quantidade de elementos que eu tenho lá Quantos elementos você tem que quatro então Carlos ponto lente vai
me retornar o valor quatro então legal que você quer de forma dinâmica né então ó aí é quantas 0 é menor que 4 Sim então ele vai fazer o quê vai exibir o valor de carce na posição I Então quando você tá tratando com a Reis você tem que Indicar qual elemento que você quer acessar aqui no caso E como que você faz isso indicando depois do nome da variável do Arreio você vai usar os colchetes e o índice que você quer acessar você quer acessar a primeira posição a segunda terceira quarta Lembrando que a
primeira posição começa no valor zero vou falar de novo porque isso é importante a primeira posição primeiro índice de uma rei é a posição zero então aqui ó o Que que vai ser vai ser exibido na primeira execução Carlos na posição e que é zero na posição zero então ele vai exibir voo aí vai incrementar e mais mais então e agora é um vai verificar de novo é menor que quatro Sim então ele exibir carta posição um Qual que é a posição 1 é a segunda posição tá BMW vai exibir BMW de novo Resumindo ele
vai receber forte vai exibir Mazda até quando ele chegar no = 4 né porque ele vai incrementando e aí Depois que ele exibir base da ui vai ser 4 4 é menor que 4 falso E aí ele não exibe mais nada e segue a execução depois do fórum depois do laço tá porque se você colocar por exemplo menor ou igual a 4 ele iria executar mais uma vez porque quatro não é menor mas é igual a 4 então ele ia tentar acessar o arreio na posição 4 só que na posição quatro não tem nada ó
tem zero um dois três na quatro não tem E então isso aqui é gerar uma exceção tá Beleza mas sessão quer que é uma falha nesse sentido ok pessoal então isso é uma Rei galera eu trouxe aqui para vocês a As definições alguns conceitos básicos da linguagem Java que nos permitem aprofundar mais o estudo e também nos capacita aí atentar resolver algumas questões para concurso em breve vou estar disponibilizando para vocês o vídeo se quando você já não tiver Assistindo talvez já tenha só dá uma olhada aí na nos comentários ou na descrição se tiver
você já vai visualizar Aí o vídeo com resoluções de questões já Ok é assim mesmo por etapa agora depois a gente pode estudar a parte de orientação objeto e de classes especialmente tá definição de classes de métodos e a orientação objeto Java na orientação objeto tá trazendo a Perspectiva do Java segundo orientação objeto que também costuma cair em concurso beleza por hoje pela aula de hoje é o suficiente Valeu grande abraço até mais