Elenco de Scala

Elenco de Scala
Nas linguagens de programação, encontramos uma situação em que precisamos da variável já existente definida em um tipo de dados para ser convertido em um tipo de dados diferente. Para este Scala, o TypeCasting é uma abordagem que mudará o tipo de variável de dados em outros tipos de dados. Mas nem todo tipo de dados pode ser convertido para outro tipo de dados de sua escolha. No artigo, discutiremos o Scala TypeCasting para obter uma melhor compreensão da conversão do tipo de dados para o outro tipo.

O que é TypeCasting em Scala?

Na TypeCasting, o tipo de palavra informa ao compilador sobre qual tipo de dados temos em um programa. O tipo também é conhecido como tipo de dados. TypeCasting é a conversão de um tipo de dados já existente em outro tipo de dados. Essa conversão de um tipo para outro é possível, mas não podemos revertê -los novamente, não é possível em Scala devido aos diferentes tamanhos dos tipos de dados. Pode haver um risco de perda de dados para converter um tamanho maior do tipo de dados para um menor.

Sintaxe da TypeCasting in Scala

A sintaxe geral da fundição do tipo Scala parece dessa maneira:

object_name = objeto.ASINSTANCEOF [CLASS]

O método asinstanceof é usado para digitar. Na sintaxe acima, objeto_name é definido em que a instância fundida do objeto é retornada, o objeto é o objeto a ser lançado. A classe é o nome de uma classe em que um objeto é lançado.

Como digitar fundição em Scala no Ubuntu 20.04?

Para saber, como podemos castar o tipo de dados de um para outro em Scala, devemos dar uma olhada nos exemplos:

Exemplo # 1: Programa de elenco implícito em Scala Ubuntu 20.04

Quando o compilador digita qualquer valor ou variável em si, é implícito. Os dados podem ser perdidos eu.e., Em um caso em que o valor inteiro retorna um valor de flutuação, o compilador imprime apenas o valor do tipo inteiro que pode levar à perda de dados. Temos um código abaixo para demonstrar como o elenco pode ser feito implícito.

No código de exemplo acima, temos uma classe como "TypeConversion1". A classe tem um método principal no qual criamos um valor como "val" e definimos como "myvalue". A variável "MyValue" é inicializada com o valor "489" do tipo de dados inteiro. Após a divisão, o resultado é salvo em uma nova variável "MyResult", que retorna o valor do restante. Esta operação de divisão deixa um ponto decimal, mas devido à conversão implícita do tipo. Através de declarações de impressão, teremos o valor dos tipos de dados com os tipos mencionados.

A saída tem um valor inteiro exibido na imagem abaixo, mas deve haver um valor de flutuação retornado na operação da divisão. Isso se deve ao fundamento do tipo implícito, o que perde valores decimais.

Exemplo # 2: Programa de elenco explícito em Scala no Ubuntu 20.04

O código de exemplo acima tem um problema com a perda de dados. Podemos resolvê -lo usando elenco explícito. A conversão do valor do tipo de dados ou variável é definida pelo usuário. Este tipo de fundição é fundido definido pelo usuário em Scala.

No código acima, temos dois tipos de conversão. A implementação está em uma classe Scala chamada "TypeConversion2". O método principal da classe define uma conversão do tipo de dados. Primeiro, criamos uma variável representada como "x" do tipo de dados curto que tem um valor "999". Em seguida, adicionamos outra variável "y" que converte o tipo de dados de curto a longo e inicializa com o tipo curto. Para isso, temos uma variável como "eu" do tipo char que armazena um personagem "z". Criamos outra variável "j" para converter tipo de char para flutuar e inicializá -lo com o valor de char. Através do método getClass, obteremos o tipo de dados dos valores específicos. A função de impressão retornará os valores de saída das variáveis ​​especificadas.

Podemos ver o valor longo de "999" na tela do terminal e também o valor do personagem "Z" no tipo de dados float.

Exemplo # 3: Programa de usar o método ASINSTANCEOF em Scala Ubuntu 20.04

A função ASINSTANCEOF é uma técnica de fundição de tipo especial em Scala. É preciso um parâmetro do valor em que o tipo é especificado. O método funciona principalmente no tempo de execução. Se durante o tempo de execução, o tipo especificado não corresponde ao valor em que o método é chamado, ele lança uma exceção.

No código acima da classe declarado como "TypeConversion3", definimos uma variável como "p" de inteiros do tipo de dados inteiros. A variável “P” armazena um valor “1999” sobre o qual a TypeCasting será feita. Em seguida, criamos uma variável "resultado1" do tipo Float. Isso converterá o tipo de int para flutuar. A declaração de impressão retornará o valor de "resultado1" com o tipo mencionado. No código, também tomamos valores de caracteres para conversão de tipo. Criamos uma variável "q" do tipo de dados char que armazena um valor de caractere "M" e, em seguida, inicializamos o valor do caráter usando o método ASINSTANCEOF em uma nova variável "Result2", o tipo de dados estará no valor ASCII do personagem. A declaração de impressão ajudará a mostrar os valores retornados da TypeCasting.

Conforme mostrado na imagem abaixo, o duplo valor de "1999" como uma saída e o valor ASCII do caractere "M" como saída do método TypeCast.

Conclusão

O guia tem como objetivo fornecer uma compreensão clara e concisa da tipo de tipo de escala. Nós cobrimos quase tudo sobre a TypeCasting. Em primeiro lugar, temos uma breve introdução ao TypeCasting Scala. Em seguida, temos sintaxe geral e a implementação do código de exemplo. No código de exemplo, discutimos dois tipos de tipo de tipo de escala: elenco implícito e elenco explícito. Além disso, passamos pelo método Scala Casting AsinstanceOf, que também pode ser usado para aplicações mais complexas, como passar uma matriz da instância do objeto. Esses exemplos o ajudarão a lidar com casos de tipo de tipo.