Java Урок 13: Преобразование типов

Иногда возникают ситуации, когда имея величину какого-либо определенного типа, необходимо присвоить ее переменной другого типа.

Скачать исходники для статьи можно ниже

STRING TO BYTE

C использованием конструктора

Byte b1 = new Byte("10");
System.out.println(b1);

С использованием метода valueOf класса Byte

String str1 = "111";
Byte b2 = Byte.valueOf(str1);
System.out.println(b2);

С использованием метода parseByte класса Byte

byte b = 0;
String str2 = "100";
b = Byte.parseByte(str2);
System.out.println(b);

Перевод строки в массив байтов и обратно из массива байтов в строку

String str3 = "20150";
byte[] b3 = str3.getBytes();
System.out.println(b3);
//массив байтов переводим обратно в строку
String s = new String(b3, "cp1251");
System.out.println(s);

STRING TO SHORT

C использованием конструктора

Short s1 = new Short("68");
System.out.println(s1);

C использованием метода valueOf класса Short

String str1 = "59";
Short s2 = Short.valueOf(str1);
System.out.println(s2);

C использованием метода parseShort класса Short

short s3 = 0;
String str2 = "100";
s3 = Short.parseShort(str2);
System.out.println(s3);

STRING TO INT

C использованием конструктора

Integer i1 = new Integer("20349");
System.out.println(i1);

C использованием метода valueOf класса Integer

String str1 = "1451";
Integer i2 = Integer.valueOf(str1);

C использованием метода parseInt класса Integer

int i3 = 0;
String str2 = "102944";
i3 = Integer.parseInt(str2);
System.out.println(i3);

STRING TO LONG

C использованием конструктора

Long l1 = new Long("11111111");
System.out.println(l1);

C использованием метода valueOf класса Long

String str1 = "222222222";
Long l2 = Long.valueOf(str1);
System.out.println(l2);

C использованием метода parseLong класса Long

long l3 = 0;
String str2 = "333333333";
l3 = Long.parseLong(str2);
System.out.println(l3);

STRING TO FLOAT

С использованием конструктора

Float f1 = new Float("123.5");
System.out.println(f1);

C использованием метода valueOf класса Float

String str1 = "3.1415";
Float f2 = Float.valueOf(str1);
System.out.println(f2);

C использованием метода parseFloat класса Float

float f3 = 0;
String str2 = "36.6";
f3 = Float.parseFloat(str2);
System.out.println(f3);

STRING TO DOUBLE

С использованием конструктора

Double d1 = new Double("4.4e10");
System.out.println(d1);

C использованием метода valueOf класса Double

String str1 = "564.6e10";
Double d2 = Double.valueOf(str1);
System.out.println(d2);

C использованием метода parseDouble класса Double

double d3 = 0;
String str2 = "13.7e10";
d3 = Double.parseDouble(str2);
System.out.println(d3);

STRING TO BOOLEAN

Преобразование строки в логический тип 2мя способами. Обратите внимание, что строка не соответствующая true, будет преобразована в логическое значение false.

String s1 = "True";
String s2 = "yes";
boolean bool1, bool2, boolean1, boolean2;

//с использованием метода parseBoolean
bool1 = Boolean.parseBoolean(s1);
bool2 = Boolean.parseBoolean(s2);
System.out.println( bool1 );
System.out.println( bool2 );

//c использованием метода valueOf
boolean1 = Boolean.valueOf(s1);
boolean2 = Boolean.valueOf(s2);
System.out.println( boolean1 );
System.out.println( boolean2 );

INT TO STRING

C использованием метода toString класса Integer

int i = 35;
String str = Integer.toString(i);
System.out.println(str);

с использованием операции добавления класса String

int i = 35;
String str = "" + i;
System.out.println(str);

DOUBLE TO STRING

C использованием метода toString класса Double

double i = 32.4;
String str = Double.toString(i);
System.out.println(str);

с использованием операции добавления класса String

double i = 32.4;
String str = "" + i;
System.out.println(str);

LONG TO STRING

C использованием метода toString класса Long

long i = 3422222;
String str = Long.toString(i);
System.out.println(str);

с использованием операции добавления класса String

long i = 3422222;
String str = "" + i;
System.out.println(str);

FLOAT TO STRING

C использованием метода toString класса Float

float i = 3.46f;
String str = Float.toString(i);
System.out.println(str);

с использованием операции добавления класса String

float i = 3.46f;
String str = "" + i;
System.out.println(str);

Преобразования символа char

CHAR TO STRING

char ch = 'S';

// c использованием класса Character
String charToString = Character.toString(ch);
System.out.println(charToString);

// с использованием операции добавления класса String
String str = "" + ch;
System.out.println(str);

//с использованием массива
String fromChar = new String(new char[] { ch });
System.out.println(fromChar);

// с использованием метода valueOf класса String 
String valueOfchar = String.valueOf(ch);
System.out.println(valueOfchar);

CHAR TO INT

char ch = '9';

// c использованием метода getNumericValue класса Character
int i1 = Character.getNumericValue(ch);
System.out.println(i1);

// c использованием метода digit класса Character
int i2 = Character.digit(ch,10);
System.out.println(i2);

Преобразования чисел

INT TO LONG

int i = 2015;
long l = (long) (i);
System.out.println(l);

INT TO FLOAT

int i = 2015;
float f = (float) (i);
System.out.println(f);

LONG TO INT

long l = 214748364;
int i = (int) l;
System.out.println(i);

DOUBLE TO INT

double d = 3.14;
int i = (int) d;
System.out.println(i);

обратите внимание на то, что после преобразования double в int отбрасывается дробная часть и остается только целое число. Так, в нашем примере, на консоль будет выведено число 3.

Введите свой email адрес для того, чтобы подписаться на мой блог:


knopkisoc

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *