인코딩
ASCII--0~127 65-A 97-a
서유럽 코드 테이블---ISO-8859-1---0-255---1바이트
gb2312----0 - 65535---gbk---2바이트
유니코드 인코딩 시스템---utf-8---3바이트
中 f
bit 바이트 바이트 1Byte = 8bit 1KB=1024B MB GB TB PB---저장 장치 컴퓨터에서
정수 상수---모든 정수 3,99,107
소수 상수---모든 소수 3.5 100.9
문자 상수---작은따옴표를 사용하여 문자, 숫자 및 기호를 묶습니다. 'a' '=' ' '
문자열 상수---하나 이상의 문자를 식별하려면 큰따옴표를 사용하십시오. "abc" "234" "q2" ""
부울 상수-- -논리 값을 나타내는 데 사용됩니다--- true/false
빈 상수---null
5-정수, 5.0-십진수 '5'-문자 "5"-문자열 '5.0'-잘못된 "5.0" 쓰기- String
바이너리: 전체 바이너리 to one, 0~1 1+1=10 0b10011 0b0011, JDK1.7부터 숫자를 이진수로 식별하기 위해 0b로 시작할 수 있습니다.
octal: full 8 대 1, 0~7, 7+ 1=10은 0 06 015
로 시작해야 합니다. 십진수: 10의 1, 0~9
16진수: 16의 1, 0~9, , A~F, 9+1=A f+1 =10 0x 0x5 0xad로 시작해야 합니다
십진법에서 이진법으로 변환: 계속 2로 나누어 나머지를 취하고 나머지를 역순으로 넣습니다
이진법을 십진법으로 변환 : 낮은 순서부터 시작하여 2의 거듭제곱을 곱한 후 합산
2진수를 8진수로 변환: 낮은 순서부터 시작하여 세 자리마다 그룹으로 나누고, 3 미만 비트가 보충됩니다. 0으로 8진수 하나를 생성하고 이 숫자들을 순서대로 배열할 수 있습니다
8진수를 2진수로 변환: 1에서 3---8진수 1개는 2진수 3개를 생성합니다
2진수를 16진수로 변환: 4를 1로 바꾸는 과정
System.out.println(i);
int i = 5;---아니요---사용하기 전에 변수를 선언해야 합니다
int i;
System.out.println( i);---아니요--사용하기 전에 변수를 초기화해야 합니다
숫자 유형
정수 유형
byte---바이트 유형-- -1 바이트--- -2 ^7~2^7-1 --- -128~127
byte b = 5; byte b2 = -128;
short---짧은 정수--- 2바이트 --- -2^15~2 ^15-1 --- -32768~32767
short s = 54; short s = -900;
int---정수---4바이트 --- -2^31~2^31-1
int i = 100000;
int j = 100_000_000;--JDK1.7부터 허용됩니다. 이는 컴파일 중에 자동으로 무시됩니다_ -> int j = 100000000;
int i = 00001111;---octal
Java의 기본 정수 유형은 int
long---long 정수---8바이트입니다. --- -2^63~2^63-1--- L로 끝나 이 숫자가 긴 유형의 숫자임을 나타냅니다.
long l = 3L;
부동 소수점 유형
float--- 단정밀도- --4바이트---f
float f = 3.2f;
double---배정밀도---8바이트
Java의 기본 10진수 유형은 double 유형입니다
double d = 3.5;
double d = 4.6D;---예
double d = 3.9e4; //10진수 표기법입니다
double d = 0x3p2; //16진법 표기법 -> 12
문자 유형
char---2바이트--- 0 ~65535
char c = 'a';
char c = '中';
Boolean
boolean---true/false
boolean b = false;
class---클래스 인터페이스---인터페이스 배열---[]
암시적 변환/자동 유형 변환
byte b = 100;
int i = b;
long l = 63;---예---정수 값이 int 유형 범위 내에 있으면 끝 L
을 추가할 필요가 없습니다.Rule 1: 작은 유형은 가능합니다. 큰 유형으로 변환됩니다. ---byte->short->int->long float->double
int i = 5;
float f = i;
long l = 6;
float f = l;
Rule 2: 정수를 소수로 변환할 수 있지만 정밀도 손실이 발생할 수 있습니다
char c = 'a';
int i = c;
Rule 3: 문자형을 정수형으로 변환할 수 있습니다
short s = 'a';---can
char c = 100;---can
char c = 'a';
short s = c;-- -No
은 변수를 정의합니다. char형의 c. 저장된 데이터는 문자이므로 특정 문자 인코딩을 확인할 필요가 없으며, short형에 값을 할당할 때 해당 문자에 해당하는 인코딩이 short형인지 확인해야 합니다. short 타입의 값 범위는 char 타입과 완전히 겹치지 않으므로 범위를 초과하는 상황을 방지하기 위해 할당은 허용되지 않습니다. .
short s = 97;
char c = s;--아니요
명시적 변환/형변환
long l = 54;
int i = (int)l;
double d = 3.5 ;
int i = (int)d;---십진수를 강제로 정수로 변환하면 소수 부분이 바로 버려집니다
double형은 소수를 정확하게 저장할 수 없습니다
Hexadecimal--hexadecimal
Decimal - -10진수
8진수---8진수
2진수--2진수
+덧셈-뺄셈*곱셈/나눗셈% 모듈로++자동 증가--자동 감소+문자열 연결
int i = 5210 / 1000 * 1000;--->i = 5000 ;
참고:
1 정수 연산이 완료된 후 결과는 정수
2여야 합니다. 정수를 0으로 나누면 컴파일이 통과되고 실행 시 오류가 보고됩니다---ArimeticException- --산술 예외
3. 0의 결과는 무한대
4입니다. 0/0.0의 결과는 NaN---숫자가 아닙니다---숫자가 아닙니다
5. 연산 중 자동으로 int 유형으로 승격
% 나머지 연산
-5%3=-2 -4%3=-1 -3%7=-3
5%-3=2 7%- 2=1 2%-8=2
- 5%-3=-2 -9%-3=0
음수의 나머지는 먼저 양수의 나머지 연산을 따르고 부호를 보세요. 나머지 기호 왼쪽에 있는 숫자의 왼쪽이 음수이면 결과는 음수입니다.
5%1.2=0.2 6%1.3=0.8
4.3%1.4=0.1
++/--
++의 경우 원래 기준으로 1씩 증가합니다
int i = 5;
int j = ++i;---> i는 1씩 증가한 다음 값을 할당합니다. i에서 j---먼저 증가한 다음 연산
int j = i++;--->i를 먼저 값 5로 가져오고, i는 6으로 증가한 다음 얻은 값 5를 j에 할당---먼저 연산하고, 그런 다음
int i = 3;
int j = ++i * 2;-> j = 8;
int j = i++ * 2;->j = 6
int i = 6을 증가시킵니다. ;
int j = i++ + ++i;->i = 8; j = 14;
int j = ++i + i++;->i = 8; j = 14
byte b = 5;
b++;---JVM은 최하위 수준에서 결과에 대해 강제 유형 변환을 수행한 다음 결과를 바이트 유형으로 변환
char c = 'a';
System.out으로 변환합니다. println(c + 4);--can
char c2 = 'd';
System.out.println(c + c2);---작업을 수행하기 전에 int 유형으로 승격
+ 문자열 연결 연산
"a" + "b"---> "ab"
"a" + 3--- > "a3"
"a" + true-> 4 + "f"-> "6f"
"f" + 2 + 4-> "f24"
할당 연산자
int i= 5;
i += 3; -> i = i + 3 -> i -= 2;-> i = i - 2;-> i = 3;
int j;
j += 4;---아니요
int i = 5;
i + = i -= i *= 5;--> i = -15;
i = 5 + ( 5 - (5 * 5)) ;
i += i -= i *= ++i;- -->i = -20;
i += i*= i-= (i++ + --i) ;---> i = -20;
i = 5 + ( 5 * (5 - (5 + 5)));
byte b = 5;
b += 3;--- 예
byte b = 125;
b += 3;---예--- - 128
비교/관계 연산자
==같음!=같지 않음> < >= <= instanceof
instanceof---객체와 클래스 간의 관계를 결정합니다. --데이터 유형을 참조하는 데에만 사용할 수 있습니다
String s = "abd";
System.out.println(s 인스턴스of String);---true
System.out.println(“def” 인스턴스of String) ;---true
논리 연산자
는 논리 값
true^true=false true^false=true false^ true=true false^false=false
&&의 경우 이전 표현식의 값이 false이면 전체 표현식의 값을 판별할 수 있습니다. 값이 false이면 && 이후의 연산은 더 이상 수행되지 않습니다
삼항/삼항/조건 연산자
논리값 1: 표현식 2
논리값이 true이면 표현식 1을 실행하고, 그렇지 않으면 표현식 2를 실행합니다.
int i = 5, j = 7;
i > ? System.out.println(i): System.out.println(j);---아니요! 삼항 연산자 연산이 완료된 후에는 결과가 있어야 합니다!
콘솔에서 데이터 가져오기
import java.util.Scanner; 클래스 위의 패키지 아래에 작성됨
Scanner s = new Scanner(System.in);
int i = s.nextInt();
double d = s.nextDouble();
String str = s.nextLine( );
String str2 = s.next();
위 내용은 Java 기본 설명 - 기본 데이터 유형 및 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!