Operadores Flashcards

1
Q

int i = 5;

char c = i;

A

Não compila

Char não pode receber int sem cast

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Uma variável char pode receber um byte?

A

Não

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Uma variável char pode receber um int?

A

Não

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

char c = ‘c’;

int i = c;

A

Ok!

Compila

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Quando o cast é obrigatório?

A

Quando existe a possibilidade de perda de informação.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

byte b = 5;

short s = b;

A

Ok!

Compila

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

short s = 15;

int i = s;

A

Ok!

Compila

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

byte b = 100;

double d = b;

A

Ok!

Compila

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

double d = 100;

float f = d;

A

Não compila sem cast

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Qual o resultado da operação abaixo?

float fl = 5/2;

A

2.0

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

long l = 10;

float f = l;

A

Ok!

Compila

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

double d = 50;

long l = d;

A

Não compila sem Cast

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Quais os tipos aceitos em um switch?

A
byte
short
int
char
String (Aceito desde Java 7)

Não são aceitos:
Long
Double
Float

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Quais os tipos não aceitos em um switch?

A

Não são aceitos:
Long
Double
Float

São aceitos:
byte
short
int
char
String (Aceito desde Java 7)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

final int TWENTY = 20;

case TWENTY:

A

O código compila

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

final int TWENTY;
TWENTY 20;

case TWENTY:

A

O código não compila

17
Q

int NUM = 10;

case NUM:

A

Não compila pois a sintaxe case aceita somente constantes.

Deve ser final!

18
Q

case (1+1):

A

Ok

Compila pois 1 é uma constante

19
Q

final int NUM = 20;

case (1+NUM):

A

Ok

Compila pois 1 e NUM são constantes

20
Q

O que é promoção numérica?

A

Em uma operação envolvendo dois tipos diferentes o resultado será sempre o tipo mais amplo.

21
Q

byte i = 1;
byte j = 1;
byte resultado = i + j;

A

Não compila pois ocorre a promoção numérica na operação.

22
Q

O que o continue; faz em um laço for

A

Pula para a próxima iteração sem concluir a atual.

23
Q

Qual a diferença entre o break; e o continue; ?

A

O break para a execução do laço e não executa mais repetições.
O continue para a execução da iteração atual, pulando para a próxima.

24
Q

Qual exceção lançada em uma divisão por zero?

A

ArithmeticException

25
Q

Como fazer uma divisão por zero sem gerar exceção?

A

Usando um double/float que vai gerar um infinito positivo ou negativo.

System.out.println(i / 0.0); //Imprime “Infinity”

26
Q

System.out.println(“Mario” > “Guilherme”);

A

Não compila!

Tipos não primitivos e boolean só aceitam comparadores != e ==.

27
Q

Como funciona a comparação entre strings?

A

Se usar o operador == será feita a comparação entre as referências.
Para comparar o conteúdo use o método equals.

28
Q

Como funciona o pool de strings?

A

Armazena as strings que tiveram inicialização literal.

As strings que forem inicializadas usando o operador new geram uma nova referência.

29
Q

O que faz o operador lógico ^

A

Uma das expressões deve ser verdadeira e a outra falsa.

30
Q

O que é um operador ternário?

A

int y = 10;
int x = (y < 10) ? (x=5) : (x=1);
System.out.println(x + “ “ + y);

variável = (condição) ? (Executa se True) : (Executa se False);

31
Q

O código abaixo compila?
final int k = 10;
byte b = k;

A

Sim

Caso a variável seja final, o copilador tem a capacidade de conferir se o valor cabe na nova variável.

32
Q

O código abaixo compila?
final long k = 10;
byte b = k;

A

Não

Caso a variável seja final, o copilador tem a capacidade de conferir se o valor cabe na nova variável.

Só funciona com byte shot int e char.
Não funciona com long, float e double.

33
Q

O código abaixo compila?
final float f = 10.0;
byte b = f;

A

O código não funciona e possui dois erros.

Tentar inicializar um float tem identificar o valor:
final float f = 10.0f; //OK

Fazer um cast final usando float.
Caso a variável seja final, o copilador tem a capacidade de conferir se o valor cabe na nova variável.

Só funciona com byte shot int e char.
Não funciona com long, float e double.

34
Q

O que faz o método instaceof()?

A

Compara o tipo de uma variável a uma classe. Verifica se aquela instância é uma instancia de uma classe especifica.

if( tree instanceof Tree )
System.out.println( “Tree” );

35
Q

Porque o código abaixo não compila?

int option = 4;
switch (option){
	case 1:
		System.out.println("1");
	default:
		System.out.println("DEFAULT");
	default:
		System.out.println("DEFAULT2");
}
A

Pois é permitido somente um default por switch.

36
Q

Quais tipos Wrappers são aceitos em um switch?

A

Byte
Short
Integer
Character