>  기사  >  Java  >  자바에서의 변환

자바에서의 변환

WBOY
WBOY원래의
2024-08-30 15:12:13834검색

Java에서의 변환은 변수를 특정 데이터 유형으로 선언할 수 있으며, 특정 작업/기능이 성공적으로 실행되기 위해 다른 데이터 유형으로 변환되는 현상입니다. 이 데이터 유형 변환은 int, char, long, boolean, float, double, byte 및 short의 8가지 데이터 유형 모두에 적용 가능합니다. 변환 유형은 암시적 변환과 명시적 변환으로 분류할 수 있습니다. 암시적 변환 방법은 두 데이터 유형이 모두 호환되거나 대상 데이터 유형이 소스 데이터 유형보다 큰 경우에 수행됩니다. 문자열에 대한 명시적인 변환 방법은 '문자열을 int로', '문자열을 long으로', '문자열을 부동 소수점으로', '문자열을 부울로'와 같은 여러 방법으로 수행하며 날짜 변환은 '문자열을 날짜로' 및 '문자열을 부울로'로 수행합니다. '날짜를 문자열로'.

광고 이 카테고리에서 인기 있는 강좌 JAVA MASTERY - 전문 분야 | 78 코스 시리즈 | 15가지 모의고사

Java의 변환 유형

변수가 어떤 데이터 유형으로 변환되었는지에 따라 두 가지로 분류할 수 있습니다.

1. 암시적 변환

변환 과정에 명시적인 코드가 필요하지 않고 변수에 다른 데이터 유형 값을 할당하는 것만큼 쉽기 때문에 자동 변환이라고도 합니다. 매우 기본적인 예는 정수 값을 긴 변수에 할당하는 것입니다. 예시를 통해 Simple Implicit Conversion을 보여드리겠습니다.

샘플 코드:

public class con_java {
public static void main(String[] args) {
int a = 22;
long b = a;
System.out.println("Converted Value is : " + b);
}
}

위의 예에서는 단순히 long 변수에 정수 값을 제공했는데, 이는 마치 매력처럼 작동합니다. Int와 Long은 둘 다 숫자 데이터 유형이므로 서로 원활하게 작동합니다.

코드 해석: main이 있는 간단한 클래스에서는 값이 22인 정수 "a" 변수를 선언한 다음 긴 변수 "b"를 선언했습니다. 여기서는 long 데이터 유형인 b에 a의 정수 값을 할당했습니다. 인쇄 라인에서는 긴 데이터 유형 b의 값이 인쇄됩니다. 암시적 변환이므로 추가 코드가 필요하지 않습니다.

출력:

자바에서의 변환

암시적 변환에는 두 가지 기본 규칙이 있습니다. 이러한 속성이 만족되어야만 변환이 원활하게 이루어집니다.

아. 두 데이터 유형 모두 호환 가능해야 합니다

  • 데이터 유형 중 하나가 다른 유형과 호환되지 않는 경우 변환이 발생하지 않습니다. 소스 데이터 유형이 숫자 카테고리인 경우 대상도 동일한 카테고리에 속해야 합니다.
  • 숫자 데이터 유형은 서로 호환되며 변환하기 쉽습니다. 그러나 이러한 동일한 숫자 데이터 유형은 char 유형이나 부울 유형으로 쉽게 변환될 수 없습니다.
  • Byte, Short, Int, Long, Float 및 Double은 숫자 데이터 유형입니다.

ㄴ. 대상 데이터 유형은 원본 데이터 유형보다 커야 합니다

  • 이는 변환하려는 데이터 유형의 비트 크기가 더 커야 함을 의미합니다.
  • 예를 들어, long 변수에 int 값을 할당했습니다. 여기서 int의 비트 크기는 32비트입니다. 반대로, long의 비트 크기는 64비트입니다. 즉, 64비트 길이가 32비트 정수보다 값이 더 큽니다.

위에서 언급한 규칙이 충족되면 간단한 암시적 변환이 발생합니다. 이제 명시적 변환에 대해 알아보겠습니다.

암시적 변환에 대한 두 번째 요구 사항은 낮은 비트 데이터 유형을 더 큰 비트 데이터 유형으로만 변환할 수 있어 변환 시 데이터 손실이 발생하지 않는다는 것입니다. 하지만 더 큰 비트 크기의 데이터 유형을 더 작은 데이터 유형으로 변환해야 한다면 어떻게 될까요? 여기서 데이터 손실은 불가피하며 Java 컴파일러는 "UserWarni: 변환 시 정밀도 손실이 가능합니다." 오류 또는 코드에 따라 다른 오류를 발생시킵니다. 명시적 변환은 변환 속성과 이로 인해 발생하는 오류를 인식할 때 사용하는 것입니다.

2. 명시적 변환

명시적 변환을 구현하는 것은 요구 사항에 따라 사용자 정의 임시 데이터 유형을 명시적으로 정의하여 Java의 기본 유형 변환을 재정의하는 것입니다. 유형 변환을 명시적으로 제공하면 값의 데이터 유형이 단기적으로 원하는 데이터 유형으로 변경됩니다. 명시적 변환은 유형 축소라고도 합니다. 유형 변환 구문은 다음과 같습니다.

Vaiable2 = (type) Variable1;

여기서, Variable2는 Variable1이 변환되어야 하는 다양한 데이터 유형의 대상 변수입니다. (type)은 Variable1이 Variable2로 변환되어 할당되는 데이터 유형을 지정합니다.

Explicit Conversion can be of immense use, where a small part of the number is kept on hold while the calculation is executed. Application for explicit conversion can be a simple calculator, where the percentage of the student has to be calculated. To demonstrate the working of Explicit Conversion, let’s try an example.

Sample Code:

public class exp_con_java {
public static void main(String[] args) {
double dou_Variable = 120.14;
long long_Variable = (long) dou_Variable;
int intVariable = (int)long_Variable;
System.out.println("The Double value is "+dou_Variable);
System.out.println("The Long value is "+long_Variable);
System.out.println("The Integer value is "+intVariable);
}
}

Output:

자바에서의 변환

Below is the list of Possible Conversions in Java:

  • String to int (using Integer.parseInt() which returns primitive int)
  • String to long (using Long.parseLong() which returns primitive long)
  • String to float (using Float.parseFloat(), it returns primitive float)
  • String to Boolean (using Boolean.parseBoolean(), it returns primitive boolean, either TRUE or FALSE)

SimpleDateFormat(): is a Java class that helps in formatting and parsing of the data. It simply allows us to convert a simple String into a Date object.

  • String to Date (using parse(), it converts a value of String into Date object)
  • Date to String (using format(), simply converts a Date into String)

The above listed are the possible conversion types and the methods required, and the output it returns.

Conclusion

Type conversion in Java or any other language is a better way of utilizing its functions and getting the desired output. We have understood two types of conversion based on properties and data types. Implicit conversion does not need any extra effort but must follow two properties. And Explicit conversion must be explicitly defined in order to override Java’s default conversion. We have understood both types with program examples.

위 내용은 자바에서의 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:자바 부울다음 기사:자바 부울