Java 데이터 유형: 정의 및 사용법
식별자 및 키워드
식별자
발음 biao zhi fu
식별자는 무엇입니까?
패키지, 클래스, 변수, 메서드...등등 이름이 지정되어 있는 한 해당 이름은 식별자입니다
ID 기호에는 네 가지 정의 규칙이 있습니다. 숫자, 문자, 밑줄(_), 달러 기호($)를 사용하여 이름을 지정하는 것이 일반적입니다.
두 가지 금기 사항: 숫자로 시작할 수 없으며 Java에서 키워드를 사용할 수 없습니다.
이름을 보고 의미를 이해하세요. 독자들이 이름을 통해 무엇을 하는지 이해할 수 있도록 예를 들어 버블 정렬(
)을 사용하면 이 방법이 버블 정렬이라는 것을 확실히 알 수 있습니다.bubble_Sort
CamelCase 명명:
- 클래스 이름: 첫 글자는 대문자, 나머지는 camelCase 명명을 따릅니다.
- 메서드 이름/변수 이름: 첫 글자는 소문자, 나머지는 camelCase 명명을 따릅니다.
- 패키지 이름 : 모두 소문자
- 길이 제한 : 길이에는 제한이 없으나 너무 길면 안됨
키워드
- 는 자바 언어에서 특별한 의미를 부여받아 특별한 목적의 단어로 사용됩니다
- 공식 웹사이트: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html
상수 및 변수
상수
상수는 두 가지 유형으로 나뉩니다.
상수는 일반적으로 1, 2, 3, ’a’, ’b’, true, false, "helloWorld" 등과 같은 고정된 값을 나타냅니다.
Java 언어에서 final 키워드는 주로 상수를 정의하는 데 사용됩니다. 상수가 초기화되면 해당 값을 변경할 수 없습니다.
좀 더 잘 구별하고 표현하기 위해 1, 2, 3, ’a’, ’b’, true, false, "helloWorld" 등을 일반적으로 리터럴 상수라고 하고, final로 수정한 PI를 심볼릭 상수라고 합니다. 상수(문자 상수).
리터럴 상수 유형:
정수 상수: 123 23실제 상수: 3.1415926
문자 상수: ‘a’ ‘b’
논리 상수: true false
문자열 상수: " helloworld”
참고: 논리 상수에는 두 가지 값이 있습니다. 하나는 true이고 하나는 false입니다.
Variables
변수는 기본적으로 작동 가능한 저장 공간을 나타내지만 그 안에 어떤 값이 배치되는지는 중요하지 않습니다. . 변수 이름을 통해 해당 저장 공간에 접근하여 이 저장 공간에 저장된 값을 조작할 수 있습니다.
Java는 강력한 유형의 언어이며 각 변수는 해당 데이터 유형을 선언해야 합니다. 변수 저장 공간의 크기 예를 들어, int a=3;은 변수의 공간 크기가 4바이트라는 것을 의미하며, 그 요소에는 변수 이름, 변수 유형 및 범위가 포함됩니다. 반드시 선언해야 합니다. 변수를 선언한 후에만 해당 길이의 저장 공간을 할당받을 수 있습니다.
변수 선언 형식
데이터 유형 변수 이름 = 초기 값.. .예를 들어 :
public class TestCode01{ public static void main(String[] args){ int a=3,b=4,c=5; //也可以先定义不赋值 int a,b,c; } }
변수 선언
- 변수만 정의하고 변수에 값을 할당하지 않으면 실제로 이 변수는 정의되지 않은 것과 같습니다. 변수에 값이 할당되지 않으면 오류가 발생합니다. 변수가 초기화되지 않았습니다.
public class TestCode01{ public static void main(String[] args){ int a; System.out.println(a);//会报错,未初始化变量a } }
로그인 후 복사변수 할당int a=10;//直接定义并赋值 int b;//先定义在赋值 b=20;
로그인 후 복사변수를 반복적으로 정의할 수 없습니다
정수 데이터 유형:
public class TestCode01{ public static void main(String[] args){ //定义整数类型的变量: //给变量赋值的时候,值可以为不同进制的: int num1 = 12 ;//默认情况下赋值就是十进制的情况 System.out.println(num1); int num2 = 012;//前面加上0,这个值就是八进制的 System.out.println(num2); int num3 = 0x12;//前面加上0x或者0X,这个值就是十六进制的 System.out.println(num3); int num4 = 0b10;//前面加上0x或者0B,这个值就是二进制的 System.out.println(num4); //定义byte类型的变量: byte b = 126;//定义了一个byte类型的变量,名字叫b,赋值为12 System.out.println(b); //注意:超范围的赋值会报错。 short s = 30000; System.out.println(s); int i = 1234; System.out.println(i); //整数类型默认就是int类型的,所以12345678910是一个int类型的数,对于int类型来说,它超出范围了 //要想把一个数给long类型变量,那么后面加上L(推荐)或者l就可以了 long num5 = 12345678910L; System.out.println(num5); //注意:只有这个数超出int类型的范围了后面才需要加上L,否则无需加L也可以赋值给long类型: long num6 = 12; System.out.println(num6); } }
부동 소수점 유형 상수
(1) 소수 형식, 예: 3.14 314.0 0.314
( 2) 과학적 표기법 예:
//314e2 314E2 (E的大小写没有区分) 314E-2 double f = 314e2; //31410^2-->31400.0 double f2 = 314e-2; //31410^(-2)-->3.14
부동 소수점 유형 변수
float 유형은 단정밀도 유형이라고도 하며 유효 숫자 7자리까지 정확할 수 있습니다.
그리고 double은 이 유형의 수치 정밀도가 대략 float임을 의미합니다. double 유형이라고도 하며 대부분의 애플리케이션에서는
Float 유형 값을 사용합니다. 접미사 F 또는 f와 접미사 F/f가 없는 부동 소수점 값은 기본적으로 double 유형입니다.
부동 소수점 값 뒤에 접미사 D 또는 d를 추가하여 이중 유형임을 분명히 할 수도 있습니다.
PS: 유효한 숫자는 왼쪽부터 마지막 숫자까지 0이 아닌 첫 번째 숫자를 나타냅니다public class TestCode02{ public static void main(String[] args){ //浮点类型的常量有两种形式: //十进制形式: double num1 = 3.14; System.out.println(num1); //科学计数法形式: double num2 = 314E-2; System.out.println(num2); //浮点类型的变量: //注意:浮点型默认是double类型的,要想将一个double类型的数赋给float类型,必须后面加上F或者f float f1 = 3.14234567898623F; System.out.println(f1); //注意:double类型后面可以加D或者d,但是一般我们都省略不写 double d1 = 3.14234567898623D; System.out.println(d1); //注意:我们最好不要进行浮点类型的比较: float f2 = 0.3F; double d2 = 0.3; System.out.println(f2==d2); /* 区别: = 赋值运算: 将等号右侧的值赋给等号左侧 == 判断==左右两侧的值是否相等 :结果要么相等 要么不相等 ==运算符的结果就是要么是true,要么是false */ } }
字符类型
字符型
Java的字符使用16位的Unicode
编码表示,而计算机语言通常使用ASCII码
,用8位表示一个字符。
字符型是用两个单引号括起来的一个字符,如’a’,’1’,’A’等。其中,’a’和’A’分别表示ASCII码中的字符a和A,而’1’表示字符型1,而不是整数的数值1。除了一般字符外,Java还定义了一些特殊字符,如图:
字符型除了常数值的表示方式与整数型不同外,在其他方面几乎可以将它视为一般整数来处理。
字符串型
字符串是指括在两个双引号之间0个或多个字符组成的序列。若两个双引号之间没有任何字符,则为空串。下面是有关字符串的一些例子:
""
"hello world!"
"hello java"
Java语言把字符串当作String类型的一个对象来处理。
布尔类型
boolean类型有两个常量值,true
和false
,在内存中占一位(不是一个字节),不可以使用 0 或非 0 的整数替代 true 和 false ,这点和C语言不同。 boolean 类型用来判断逻辑条件,一般用于程序流程控制 。
public class TestCode03{ public static void main(String[] args){ //创建一个布尔类型的变量: boolean flag1 = true; System.out.println(flag1); boolean flag2 = false; System.out.println(flag2); boolean flag3 = 5==9; System.out.println(flag3); boolean flag4 = 5<9; System.out.println(flag4); } }
基本数据类型的转换
自动类型转换
即精度小的类型自动转换为精度大的数据类型
数据类型按精度大小排序为:
在类型转换的时候需要遵循哪些规则:
第一条:八种基本数据类型中,除boolean
类型不能转换,剩下七种类型之间都可以进行转换;
第二条:小容量向大容量转换称为自动类型转换,大容量转换小容量必须使用强制类型转,但运行时可能出现精度损失,谨慎使用
第三条:byte,short,char
类型混合运算时,先各自转换成 int
类型再做运算;
第四条:整数的默认类型是 int
,小数默认是 double
类型浮点型,在定义 float 类型时必须在数字后面跟上 F 或者 f。
第五条:浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
当一个表达式中有多种数据类型的时候,要找出当前表达式中级别最高的那个类型,然后其余的类型都转换为当前表达式中级别最高的类型进行计算。
double d2 = 12+1294L+8.5F+3.81+'a';//都转换成最高的double类型,相当于= 12.0+1294.0+8.5+3.81+97.0
强制类型转换
把精度大的数据类型的数据赋值给精度小的数据类型。
double b=3.1415926; int a=(int)b;//强制转换 高-->低
在进行运算的时候:
左=右 : 直接赋值
左
左>右 :直接自动转换
위 내용은 Java 데이터 유형: 정의 및 사용법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Java의 난수 생성기 안내. 여기서는 예제를 통해 Java의 함수와 예제를 통해 두 가지 다른 생성기에 대해 설명합니다.

Java의 Weka 가이드. 여기에서는 소개, weka java 사용 방법, 플랫폼 유형 및 장점을 예제와 함께 설명합니다.

자바의 암스트롱 번호 안내 여기에서는 일부 코드와 함께 Java의 Armstrong 번호에 대한 소개를 논의합니다.

Java의 Smith Number 가이드. 여기서는 정의, Java에서 스미스 번호를 확인하는 방법에 대해 논의합니다. 코드 구현의 예.

이 기사에서는 가장 많이 묻는 Java Spring 면접 질문과 자세한 답변을 보관했습니다. 그래야 면접에 합격할 수 있습니다.

Java 8은 스트림 API를 소개하여 데이터 컬렉션을 처리하는 강력하고 표현적인 방법을 제공합니다. 그러나 스트림을 사용할 때 일반적인 질문은 다음과 같은 것입니다. 기존 루프는 조기 중단 또는 반환을 허용하지만 스트림의 Foreach 메소드는이 방법을 직접 지원하지 않습니다. 이 기사는 이유를 설명하고 스트림 처리 시스템에서 조기 종료를 구현하기위한 대체 방법을 탐색합니다. 추가 읽기 : Java Stream API 개선 스트림 foreach를 이해하십시오 Foreach 메소드는 스트림의 각 요소에서 하나의 작업을 수행하는 터미널 작동입니다. 디자인 의도입니다
