java―Byte 류/포장 류 의 사용 설명

Byte 류/포장 류
포장 류 는 상수 류 로 예화 할 수 있 습 니 다(의미:대응 하 는 데이터 형식 을 도와 데이터 형식 을 진행 합 니 다)
자바 데이터 형식 은 내 장 된 데이터 형식 과 참조 데이터 형식 을 포함 합 니 다.
내 장 된 데이터 형식:6 개의 숫자 형식(네 개의 정수 형,두 개의 부동 소수점 형),한 가지 문자 형식,그리고 불 형식 포함
byte
byte:데이터 형식 은 1 바이트=8bit 를 차지 하고 바 이 너 리 패 치 로 표 시 된 정수 입 니 다.
수치 범위:기본 값 은 0 이 고 최소 값 은-128(-2^7)입 니 다.최대 치 는 127(2^7-1)입 니 다.
데이터 형식
키워드
메모리 에서 차지 하 는 바이트 수
수치 범위
기본 값
불 형
boolean
1
true/false
FALSE
바이트 형
byte
1
-128~127
0
단정 형
short
2
-2^15~2^15-1
0
정형
int
4
-2^31~2^31-1
0
긴 정형
long
8
-2^63~2^63-1
0
문자 형
char
2
0~2^16-1
'\u000'
단 정밀도 부동 소수점 형
float
4
1.4013E-45~3.4028E+38
0.0F
이중 정밀도 부동 소수점 형
double
8
4.9E-324~1.7977E+308
0.0D
용도:byte 유형 은 대형 배열 에서 공간 을 절약 하 는데 주로 정 수 를 대체 합 니 다.byte 변수 가 메모리 의 공간 을 차지 하기 때문에 int 형식의 1/4 만 사용 합 니 다.부족 한 것 은 이 수의 수치 범위 가 넓 기 때문에 byte 는 전부 대체 할 수 없습니다.

상용 방법
A.구조 방법

public Byte(byte value)
public Byte(String s)
B.일반 방법+클래스 방법(데이터 형식 변환)

piublic byte byteValue()
public short shortValue()
public int intVlaue()
public long longValue()
public float floatValue()
public double doubleValue()
public String toString()
public static String toString(byte b)
포장 류 와 기본 데이터 유형의 대상 관계

주:상수 류 가 실례 화 될 수 있 는 지 의 여 부 는 주로 구조 방법 에 달 려 있다

package com.youceedu.test.wrapper; 
public class TestByte { 
 public static void main(String[] args) {
 // TODO Auto-generated method stub
 byte a = 9;
 byte b = -7;
  String result = Byte.toString(a);
 Byte c = new Byte((byte) 9);
 System.out.println(c.floatValue()); 
 System.out.println(result+b);
 } 
}
보충:자바 의 byte 데이터 형식 총화||바 이 너 리 의 원본 코드,리 코딩 과 패 치
바 이 너 리 의 원 코드,반 코드 와 패 치
원 코드 는 바 이 너 리 정점 표현법,즉 가장 높 은 위 치 는 기호 위치 이 고'0'은 정 을 나타 내 며'1'은 음 을 나타 내 고 나머지 위 치 는 수치의 크기 를 나타 낸다.
반 코드 표현법 은 양수 의 반 코드 가 원래 코드 와 같다 고 규정 한다.음수 의 반 코드 는 원래 코드 에 대해 한 자리 씩 반 하 는 것 이지 만 기호 위 치 는 제외한다.
패 치 표시 법 규정:양수 의 패 치 는 원래 코드 와 같다.음수 의 패 치 는 그 반 코드 의 끝 에 1 을 더 하 는 것 이다.
양수
첫 번 째 는 기호 위 치 를 나타 내 고 원 코드,반 코드 와 패 치 는 모두 그 자체 이다.
마이너스
어떻게 음수 가 컴퓨터 에서 의 바 이 너 리(즉,그것 의 패 치)를 계산 합 니까?
먼저 음수 의 절대 치 를 반대 한 다음 에+1 로 음수 의 보 호 를 받는다.
byte a=-5
-5 의 절대 치=55 의 바 이 너 리 는 0000 0101 에서 1111 1010+1 연산 으로 1111 1011 을 얻 었 다 는 것 을 나타 낸다.그러면 1111 1011 은-5 의 보충 코드 이다.
이렇게 원가 로 계산 할 수도 있어 요.
예 를 들 어 byte a=-5 원 코드 는 1000 0101 을 나타 낸다.
그 반 호 를 1111 1010 으로 계산 하 다
그 보충 코드 를 1111 1011 로 계산 하 다
그래서-5 는 컴퓨터 에서 1111 1011 이 라 고 합 니 다.
byte
byte 의 수치 범 위 는 왜-128~127 입 니까?
byte 는 하나의 바이트,8bit 를 나타 내 는데 그 중에서 가장 높 은 위 치 는 기호 위치 이다.따라서 최대 치 는 0111 1111,즉 127 이다.최소 치 는 마이너스 1000 000(규정)입 니 다.컴퓨터 에서 바 이 너 리 는 모두 패 치 형식 으로 표시 되 는데,우 리 는 왜 최소-128 인지 이해 할 수 있다.
최소 음수 패 치 표시:1000 0000
원래 코드 를 다시 입력 하여 계산 합 니 다:
1000 0000 작-1 연산 은 0111 1111 을 얻 었 고 1000 0000 을 반 대 했 습 니 다.음수 의 패 치 는 절대 치 에서 반 대 된 것 입 니 다.즉,10000000 은 최소 음수 의 절대 치 이 고 10000000 의 10 진법 은 128 이 라 고 표시 하기 때문에 최소 음 수 는-128 입 니 다.
byte 와 ASCII
표준 ASCII 코드 는 기본 ASCII 코드 라 고도 하 는데 7 자리 2 진수(나머지 1 자리 2 진 은 0)를 사용 하여 모든 대문자 와 소문 자,숫자 0 에서 9,문장 부호,그리고 미국식 영어 에서 사용 하 는 특수 제어 문 자 를 나타 낸다.
ASCII 코드 가 표시 하 는 범 위 는 0~127 입 니 다.마침 byte 형식 으로 덮어 쓸 수 있 습 니 다.따라서 byte 유형 과 ASCII 는 서로 바 꿀 수 있다.ASCII 대조 표 에 근거 하여 볼 수 있다http://tool.oschina.net/commons?type=4
byte 형식의 변수의 값 이 실시 간 으로'작은 따옴표 안에 있 을 때 이 byte 변수의 값 은 ASCII 코드 를 표시 하고 ASCII 대조 표를 통 해 실제 수 치 를 볼 수 있 습 니 다.
예 를 들 면:

public class ByteTest {
 public static void main(String args[]) {
  byte a = 'a';
  byte b = 'B';
  byte c = '4';
 
  System.out.println("a=" + a);
  System.out.println("b=" + b);
  System.out.println("c=" + c);
 }
}
출력:

a=97
b=66
c=52
byte&0xff 의 역할
byte->int 는 byte 가 8 자리 이 고 int 는 32 자리 이기 때문에 byte 형식 이 int 형식 으로 바 뀔 때 자동 으로 기호 위치 로 높 은 위 치 를 보충 합 니 다.예 를 들 어-5 1111 1011 이 int 유형 으로 바 뀌 면 1111 1111 1111 1111 1111 1111 1011 로 표시 되 는 십 진법 의 수 치 는 변 하지 않 습 니 다.
어떤 때 는 바 이 너 리 의 패 치 형식 만 유지 하고 싶 습 니 다.우 리 는 by te&0xff 를 사용 할 수 있 습 니 다.0xff 는 16 진법 이 고 기본 값 은 int 형식 입 니 다.이 진 은 0000 0000 0000 1111 1111 로 byte 형식의 수 치 를 0xff 와 조작 하면 높 은 24 위 를 0 으로 바 꾸 고 8 위 를 낮 출 수 있 습 니 다.물론 대응 하 는 10 진수 도 달 라 졌 다.byte 를 부호 없 는 int 형식 으로 바 꾸 는 것 과 같다)
예 를 들 어 byte a=-5(int)-5)&0xff

 1111 1111 1111 1111 1111 1111 1111 1011
&
 0000 0000 0000 0000 0000 0000 1111 1111
= 0000 0000 0000 0000 0000 0000 1111 1011
int 강 을 byte 로 변환
예 를 들 면:
int a=234 byte b=(byte)a-->b=-22 는 234 가 byte 유형의 표시 범 위 를 넘 어 섰 기 때문에 강 한 이적 은 높 은 위 치 를 버 리 고 8 위 를 유지 합 니 다.
int 유형의 234 의 이 진 은 1110 1010[고 24 위 는 모두 0]으로 강하 게 바 이 트 유형 으로 바 뀌 었 고 높 은 24 위 를 버 리 고 1110 1010 을 얻 었 으 며 첫 번 째 는 기호 위 1 로 마이너스-22 를 얻 었 다.
이상 은 개인 적 인 경험 이 므 로 여러분 에 게 참고 가 되 기 를 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주시 기 바 랍 니 다.만약 잘못 이 있 거나 완전히 고려 하지 않 은 부분 이 있다 면 아낌없이 가르침 을 주시 기 바 랍 니 다.

좋은 웹페이지 즐겨찾기