Java中数组与C语言中数组的比较_李舒亮 (1)
- 格式:pdf
- 大小:162.05 KB
- 文档页数:3
Java语言与C语言的差异总结Java的设计者曾说过,设计这门语言的灵感主要来自于C++。
世上先有C++,然后才有Java,整个Java语言的发展历史就是一部对C++的填坑史。
所以在Java语言学习过程中,将其与C++语言对比是一件有意义的事情。
通过这些对比,我们能够了解到Java语言相对于C++语言有哪些改进,能带给我们哪些进步,这样对于更加深入理解这两种语言是大有裨益的。
下面我总结一下Java语言与C++语言的各种差异。
1、Java用来操纵对象的引用可以先初始化再指向对象,而C++的引用必须在初始化时就指向对象。
2、Java类除static和final外其他函数定义默认是虚函数,而C++用virtual关键字定义定义函数才是虚函数。
3、Java有一套继承自object类型的单根继承结构,而C++没有标准库内置的类继承体系。
4、Java只能通过new在堆上创建对象,基本类型除外,而C++除了new还是可以创建全局对象或者栈对象。
5、Java有自带垃圾回收机制,不用关心对象的内存释放,而C++需要手动释放通过new创建的对象。
6、Java数组成员能初始化默认值null,提供未初始化的访问和越界访问保护,而C++不提供这个机制。
7、Java局部作用域定义的变量不能隐藏更大作用域定义的变量,而C++可以隐藏。
8、Java类的基本类型成员变量可以自动初始化为默认值,类的复杂类型成员变量或者函数的基本类型成员变量如果没有初始化会报编译错误,而C++不提供这个机制。
9、Java属于纯面对对象语言,函数只能定义在类里,而C++可以将函数定义在类外。
10、Java函数调用时入参传递,对象类型参数只能传引用不能传值,基本类型参数可以传值,而C++可以使用对象传值方式。
11、Java用带反转域名的类库命名方式来解决名字污染问题,而C++使用名字空间来解决。
12、Java类所有成员函数实现和变量初始化都要写在类定义里,而C++类成员函数在类定义里申明,在类外实现,成员变量可以在类定义里初始化。
C语言和java的对比学习前言这里说写的都是我的学习笔记,然后这里的是很简单的对比学习,全部都是自己所理解的东西,而且都是很基础的,很简明的辅助自己理解学习而已。
C语言不会涉及到指针以及比指针更难更深层次的内容;Java也不会涉及到面向对象以及比面向对象更深层次更难的内容。
2015年12月20日运行机制C语言:源代码>编译>汇编>机器码>可运行程序Java源代码(*.java)>编译>字节码(*.class)>解释>程序运行相当于:把”鱼(源代码)”买回来>用”刀(编译器)”宰鱼>处理好的”鱼(字节码)”>用锅(JVM,解释/运行环境:java虚拟机)把鱼煮熟>可以吃的鱼(可运行程序) PS:Java程序分为两种类型,一种是Application程序,也就是一般的桌面程序.还有一种就是Applet程序,主要是应用(嵌入)到网页编程上的.开发环境搭建(简单入门)C语言VC++ 6.0(直接安装直接用)JavaEclipse EE1.下载安装JDK(Java 开发工具包 = java development kit)2.下载eclipse(Mars, J2SE = java 2 standard edition 标准版,J2EE=企业版,下载是下载EE版本的,EE版本可以做网页程序)3.配置环境变量JAVA_HOME: C:\Program Files\Java\jdk1.8.0_45CLASSPATH: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar或者CLASSPATH: %JAVA_HOME%\lib\rt.jar;.;PATH: %JAVA_HOME%\bin第一个程序C语言Java1.新建一个项目2.新建一个类3.运行Helloworld程序(程序主体)C语言#include<stdio.h> //头文件int main() //定义主函数(程序的入口){int a=1; //定义一个值为1的整型变量printf(“HelloWorld”); //输出语句printf(“%d”,a);return 0; //函数返回值}Java语言public class HelloWorld{ //定义HelloWorld 类public static void main(String[] args) { //主方法定义在HelloWorld类int a=1; //定义一个值为1的整型变量System.out.println(“HelloWorld”);//输出语句System.out.println(a);}}数据类型C语言Java输出语句C语言printf(“要输出的内容\n=转义字符格式声明:%d=百分号+格式字符这里字符的都只是例子双引号是格式控制,后面的a是输出表列说明那个%d就是a的值”,a); //为了避免出错那个格式声明读的时候还是读百分号d这样好一点例如:a=1;printf(“a的值是%d”,a);那么输出的就是a的值是1JavaSystem.out.print ln(“这里是字符串,外面是用符号链接的数据(变量)名”+a+”这里可以连接多个字符串,在外面还可以输入表达式,不一定是变量名称”+((float)10/3));System.out.println("a["+i+"] = "+(i+i));在这句话里加号用于拼接字符串以及求和之用。
java编程基础相关知识点与c语言的区别Java和C语言是两种常见的编程语言,它们之间有许多相似之处,也有一些明显的区别。
本文将从以下几个方面介绍Java编程基础相关知识点与C语言的区别。
一、语法差异1. 数据类型:Java和C语言都支持基本数据类型,如整型、浮点型、字符型等。
但Java还引入了一些特殊的数据类型,如字符串和布尔型,在C语言中需要使用字符数组和整型变量来代替。
2. 变量声明:在C语言中,变量可以在任意位置声明,而在Java 中,变量必须在方法、类或代码块内部声明。
3. 指针:C语言中可以使用指针来处理内存地址,而Java中不支持指针操作,它通过引用来实现对象的访问和操作。
二、面向对象差异1. 类和对象:Java是一种面向对象的语言,所有的代码都必须写在类中。
而C语言是一种过程式的语言,代码可以直接写在函数中。
2. 继承:Java支持单继承和多态,类可以通过extends关键字继承其他类。
C语言不支持继承。
3. 接口:Java中有接口的概念,一个类可以实现多个接口。
C语言没有接口的概念,但可以通过结构体和函数指针实现类似的功能。
三、内存管理差异1. 垃圾回收:Java使用垃圾回收机制来管理内存,程序员不需要手动释放内存。
而C语言需要程序员手动分配和释放内存,否则容易出现内存泄漏或越界访问的问题。
2. 数组边界检查:Java对数组进行了边界检查,可以避免越界访问。
而C语言没有边界检查,需要程序员自行控制。
四、异常处理差异1. 异常处理机制:Java提供了异常处理机制,程序可以捕获和处理异常,保证程序的稳定性。
而C语言没有内置的异常处理机制,程序员需要使用错误码或其他方式来处理异常情况。
五、跨平台性差异1. 编译方式:C语言是一种编译型语言,源代码需要通过编译器生成可执行文件。
而Java是一种解释型语言,源代码通过Java虚拟机(JVM)解释执行。
2. 跨平台性:由于Java的解释执行方式,Java程序可以在不同的操作系统上运行。
C语言与Java的异同比较C语言和Java都是广泛应用于计算机编程领域的高级编程语言,它们都有各自的特点和优势。
本文将对C语言和Java进行异同比较,以便更好地理解它们的差异和共同之处。
一、语法差异C语言和Java在语法方面存在一些差异。
首先,C语言是一种过程式语言,而Java是一种面向对象的语言。
因此,C语言更加注重过程和函数的设计,而Java更加注重类和对象的概念。
其次,C语言的语法相对较为自由,允许直接操作内存,而Java则通过垃圾回收机制和虚拟机来管理内存。
此外,C语言对指针的使用较为灵活,而Java将指针的使用限制在了较低的层面上。
二、跨平台特性Java是一种跨平台的编程语言,这是它的一个独特优势。
Java编写的代码可以在不同的操作系统上运行,只需在相应平台上安装Java虚拟机(JVM)。
而C语言编写的程序需要根据不同的操作系统进行编译和适配,无法直接在其他平台上运行。
这也是Java在企业级应用中得到广泛应用的原因之一。
三、性能比较由于C语言更加底层,直接操作内存,因此在性能方面往往具有优势。
而Java编程是在虚拟机上运行的,需要额外的解释和执行过程,相对而言性能稍低。
但是,随着硬件的不断升级和Java技术的发展,这种差距逐渐减小,大部分情况下两者的性能差异并不明显。
四、开发效率相对而言,Java在开发效率方面更高。
Java具有丰富的类库和工具支持,提供了自动内存管理和垃圾回收机制,从而减少了程序员的工作量。
Java还有成熟的开发框架和IDE工具,简化了程序的开发和调试过程。
相比之下,C语言需要程序员自己管理内存,代码的编写和调试过程相对较为复杂。
五、应用领域C语言和Java在应用领域上有所差异。
C语言在嵌入式开发、操作系统、游戏开发等方面具有广泛应用,尤其是对于对性能要求较高的场景。
而Java在企业级应用、服务器端开发、大数据处理等方面具有更强的优势。
Java具备良好的可维护性和扩展性,适合构建大型复杂系统。
Java中的数组和C语言中的数组有何异同?
楼主:好象听说是有些不一样,请高手指教。
2 楼:有一些不一样。
对于原语类型的数组,如int[] a,在C里面只要这样定义之后就可以用a[i]使用了,但是在JAVA里面是不行的,必须用int[] a = new int[LENGTH];来为数组分配空间。
这里的a更应该看成C里面的指针,它和C里面的int* a是一样的,因为这个a(C 里面的)也要先malloc一个空间之后才可以用。
对于对象数组,则要“两次分配”,如:
Object[] obj = new Object[2];
obj[0] = new Object();
obj[1] = new Object();
因为数组首先是一个句柄,而这个句柄指向的2个空间里面又是存储着两个指向Object类型的句柄。
而C里面不完全相同:
struct Object{};
struct Object* obj = (struct Object *)malloc(2 * siz eof(struct Object));
其实他们的原理大至是相同的。
只不过JAVA里数组的内存分配是在堆里面的,必须用new 来分配,而C里面是在栈里面分配的,定义的时候会自动分配。
在《Thinking in JAVA》中有更详细的介绍。
C语言对比Java介绍
欢迎大家在这里学习C语言对比Java这里是我们给大家整理出来的精彩内容。
我相信,这些问题也肯定是很多朋友在关心的,所以我就给大家谈谈这个!作为一名C程序员,我们早已掌握了面向对象程序设计的基本概念,而且Java的语法无疑是非常熟悉的。
事实上,Java本来就是从C衍生出来的。
”
然而,C和Java之间仍存在一些显着的差异。
可以这样说,这些差异代表着技术的极大进步。
一旦我们弄清楚了这些差异,就会理解为什幺说Java是一种优秀的程序设计语言。
本附录将引导大家认识用于区分Java和C的一些重要特征。
最大的障碍在于速度:解释过的Java要比C的执行速度慢上约20倍。
无论什幺都不能阻止Java语言进行编译。
写作本书的时候,刚刚出现了一些准实时编译器,它们能显着加快速度。
当然,我们完全有理由认为会出现适用于流行平台的纯固有编译器,但假若没有那些编译器,由于速度的限制,必须有些问题是Java不能解决的。
和C一样,Java也提供了两种类型的注释。
所有东西都必须置入一个类。
不存在全局函数或者全局数据。
如果想获得与全局函数等价的功能,可考虑将static方法和static数据置入一个类里。
注意没有象结构、枚举或者联合这一类的东西,一切只有类”(Class)!。
C语言C语言J a v a语言有什么区别SANY标准化小组 #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#C语言,C++语言,Java语言有什么区别C不只能考级!!UNIX,WINDOWS漏洞,单片机。
很多地方都用到了C!!C语言是高级语言的基础,学习计算机语言可以先学C,但如果以后不用C直接学C++也行,但入门稍微困难点。
C是面向过程编程的,这样往往会导致所谓的单一程序,既所有的功能只能包含在几个(通常是一个)代码模块中。
而C++是编程(OOP)的,他杜绝了C面向过程的缺陷.OOP常常要使用许多代码模块,每个模块都有特定的功能,而且是孤立的。
OOP提供了非常强大的多样性,大大增强了代码的重用机会!C语言有一个突出的优点就是适合于多种,如DOS、UNIX,也适用于多种机型。
当然,C语言也有自身的不足,比如:C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数族下标越界不作检查等。
从应用的角度,C语言比其他高级语言较难掌握。
总之,C语言既有高级语言的特点,又具有的特点;既是一个成功的系统设计语言,有时一个使用的;既能用来编写不依赖的应用程序,又能用来编写各种系统程序;是一种受欢迎、应用广泛的。
C++:的语言.是一门独立的语言;他并不依赖C语言.是编程语言中最复杂的一门.而VC是用微软C++编译器编译的语言,与标准c++有一些细微的不同.Java程序中的每个变量要么是基本数据类型(boolean,char,byte,short,int,long,float,double),要么是对对象的引用C++有许多种基本类型,额外还有struct,union,enum,数组和指针,C++指针可以指向对象,也可以不指向对象Java没有枚举、联合类型,因为Java认为没有必要。
将可有可无的语言元素去掉是Java对做出的一大改变,因此,普遍认为Java较C++更轻便,更精简Java采用Unicode字符集,C++通常用ASCII字符集。
c语⾔与java的⼀些区别注意点// java数据类型和长度int 4个字节 double 8个字节 float 4个字节 long 8个字节// short 2个字节 boolean 1个字节 char 2个字节 byte 1个字节// char, int, float, double, signed, unsigned, long, short and void// c语⾔中数据类型⽐java少⼀些在c语⾔中没有 boolean类型的数据 int 1 代表真 0 代表假// c 语⾔中没有String类型的数据 java中表⽰⼀个字符串 String , c语⾔中表⽰字符串通过char类型的数组来表⽰字符串// c 语⾔没有byte类型所有⽤char的类型表⽰byte类型#include <stdio.h>#include <stdlib.h>// sizeof(); c语⾔的⼀个函数可以把某种数据类型的长度获取出来 intmain(){ // %d 类似sql语句的? 占位符printf("char的长度为%d\n", sizeof(char));//1printf("int的长度为%d\n", sizeof(int));//4printf("float的长度为%d\n", sizeof(float));//4printf("double的长度为%d\n", sizeof(double));//8printf("long的长度为%d\n", sizeof(long));//在不同的情况下可能会有不同的⼤⼩,但是long的长度⼀定⽐int⼤ 4printf("short的长度为%d\n", sizeof(short));// 2//signed, unsigned, 数据类型的修饰符// signed int ; 代表的是有符号的int的数据// unsigned int ; ⽆符号的int数据printf("signed int的长度为%d\n", sizeof( signed int));//4printf("unsigned int的长度为%d\n", sizeof( unsigned int));//4// 符号的修饰符只能修饰整数类型的数据 long int// 不能修饰浮点型的数据 float double// printf("signed float的长度为%d\n", sizeof( signed float));system("pause"); // 调⽤windows下系统的命令让程序暂停执⾏⽅便观察程序的执⾏结果}。
编程语言C与Java的对比分析引言在计算机科学领域,编程语言是实现软件开发的工具之一。
C语言和Java语言作为两种广泛应用的编程语言,都具有其独特的特点和用途。
本文将对C语言和Java语言进行对比分析,探讨它们在各个方面的异同点。
一、历史背景C语言作为一种较早出现的编程语言,由贝尔实验室的Dennis Ritchie开发,并在1978年发布。
它主要用于系统级编程和嵌入式系统的开发。
而Java语言则诞生于1995年,由Sun Microsystems的James Gosling领导的团队开发。
Java语言最初的目标是用于编写小型家电的程序,但它很快发展成一种适用于各种跨平台应用的高级编程语言。
二、语法特点1. C语言的语法简洁而直接,更加接近底层硬件,这使得它在系统级编程和对性能要求较高的应用中具有优势。
C语言中的语法严格,需要手动管理内存,并具有指针等底层操作能力。
2. Java语言的语法相对复杂,但更具可读性和易用性,更容易学习和使用。
Java提供了自动内存管理(垃圾回收),有效减少了程序员的错误和工作量。
它也禁止了指针等对底层硬件的直接访问,提高了程序的安全性。
三、开发环境和工具1. C语言的开发通常采用编译器进行,常见的C语言编译器有GCC、Clang等。
对于跨平台开发,可以使用支持C语言的多个操作系统和开发环境。
2. Java语言的开发则需要Java Development Kit(JDK),JDK包括了编译器、调试器和其他必要的工具。
Java的优势之一是其跨平台性,只要在目标平台上安装了Java虚拟机(JVM),就可以运行Java程序,这使得Java在企业级应用和云计算等领域广泛应用。
四、应用领域1. C语言广泛应用于系统级编程,嵌入式设备开发,以及对底层硬件要求较高的应用领域。
因为C语言可以直接访问内存和硬件设备,所以在需求高性能和直接控制硬件的场景下通常选择C语言。
2. Java语言由于其易用性和跨平台性,适用于大型软件项目、企业级应用以及大规模分布式系统的开发。
PythonJava和C在数据分析领域的应用对比Python、Java 和 C 在数据分析领域的应用对比在当今数字化的时代,数据分析已经成为了企业和组织决策的重要依据。
而编程语言在数据分析中扮演着至关重要的角色。
Python、Java 和 C 作为三种常见的编程语言,各自在数据分析领域有着独特的应用特点和优势。
Python 作为一种高级编程语言,在数据分析领域的应用越来越广泛。
它具有丰富的库和工具,使得数据处理和分析变得相对简单。
例如,NumPy 库提供了高效的多维数组操作,Pandas 库则为数据处理和分析提供了强大的功能,包括数据读取、清理、转换和聚合等。
而Matplotlib、Seaborn 等库则用于数据可视化,能够将复杂的数据以直观的图表形式展现出来,帮助分析人员更好地理解数据。
Python 的语法简洁易懂,对于初学者来说比较友好。
它强调代码的可读性,采用缩进的方式来表示代码块,使得代码结构清晰明了。
而且,Python 拥有活跃的社区和丰富的学习资源,当遇到问题时,很容易在网上找到解决方案。
在数据分析项目中,Python 可以快速地进行数据探索和预处理。
通过读取各种格式的数据文件,如 CSV、Excel、JSON 等,对数据进行清洗、缺失值处理和异常值检测。
然后,运用统计分析方法和机器学习算法对数据进行分析和建模。
Java 在数据分析领域也有一定的地位。
它的优势在于其强大的面向对象编程特性和良好的性能。
在处理大规模数据时,Java 的性能表现相对出色。
Java 拥有完善的类库和框架,如 Apache Hadoop 生态系统中的 Hive、HBase 等,这些工具可以用于分布式数据存储和处理,适用于处理海量的数据。
与 Python 不同,Java 的语法相对较为严谨和复杂,但这也使得它在编写大型项目时更具规范性和可维护性。
在企业级的数据分析应用中,Java 常常用于构建稳定可靠的后端服务,处理数据的存储、传输和计算。
c程序设计语言c和java的区别是什么对于那些经常使用快速开发工具,如Delphi或者ViualBaic的开发人员来说,属性是一个非常熟悉的概念。
一般来说,通过get某某某可以读取属性的值,而通过et某某某可以设置属性的值。
c#中比较常见的属性操作语句:foo.ize++;label.font.bold=true;很明显,上述的属性设置方式较JAVA来说更为简洁,可主读性也更强。
这充分体现了C#简单的特点。
JAVA对于属性的定义:publicintgetSize(){returnize;}publicvoidetSize(intvalue){ize=val ue;}c#对于属性的定义进行了简化:publicintSize{get{returnize;}et{ize=value;}}C#提供inde某来给对象加上索引的功能,从而用与处理数组类似的方式来处理对象,JAVA语言则不支持inde某可以认为是一种类型安全、面向对象的函数指针。
C#使有delegate可以通过一个名字访问不同的函数,它实现和JAVA 中的interface类似的功能,但是它比interface更为好用。
C#提供对event的直接支持,它通过delegate和event关键字实现对事件的处理。
event关键字隐藏所有delegate方法,运算符“+=”和“-+”允许程序员自由加入或者删除时间处理程序。
枚举用于指定一系列的对象。
C#通过如下语句来定义和使用枚举:定义:publicenumDirection{North,Eat,Wet,South};JAVA不直接支持枚举,如果要实现和C#相类似的功能,必须先定义一个类C#提供了标准的for循环,同时还提供了foreach语句(从VB中引入)来循环处理集合中的元素。
C#遍历集合中的所有元素:foreach(objectoincollection){…}大多数的高级程序设计语言都有基本数据类型,如整型、浮点类型等。
Java中数组与C语言中数组的比较
李舒亮
【期刊名称】《新余学院学报》
【年(卷),期】2006(011)003
【摘要】从多方面比较数组在java与C语言中的区别,根据它们在内存中的表现形式,找出其差别的根本原因.
【总页数】3页(P85-87)
【作者】李舒亮
【作者单位】新余高等专科学校,计算机系,江西,新余,338000
【正文语种】中文
【中图分类】TP312
【相关文献】
1.C语言中数组指针在汇编语言寻址方式中的应用 [J], 马耀锋;李红丽
2.C语言中数组指针在汇编语言寻址方式中的应用 [J], 马耀锋;李红丽
3.论《C语言程序设计》中的数组 [J], 武丽娟
4.C语言程序设计中数组的有效运用 [J], 周亚辉
5.论C语言程序设计中数组的定义与使用 [J], 李红霞
因版权原因,仅展示原文概要,查看原文内容请购买。
与C++相比,Java中的数组有什么不同
(1)一维数组:声明:数据类型数组名[ ] 或数据类型[ ] 数组名注意:不能指定数组元素多少;创建:new 数据类型[数组的长度],通常赋值给数组名,也可以将声明与创建合二为一,例如:int a[]; a=new int[3]; 与int a[]=new int[3];效果等同。
静态初始化:是数组声明的另一种形式,格式:数据类型数组名[ ]={值1,值2,…, };例如:int a[ ] = { 3, 9, 8}; 相当于int a[ ]= new int[3]; 和a[0]=3, a[1]=9, a[2]=8;(2)多维数组:将它看做是一维数组,只是其中的每一个元素是低一维的数组。
声明、创建方法与一维数组类似,例如:int a[][]=new int[3][4]; 与int a[][]=new int[3][]; a[0]=new int[4]; a[1]=new int[4]; a[2]=new int[4]; 等同此外,在多维数组中还可以声明长短不一的不规则数组。
(3)length是表示数组长度的属性;而数组元素的引用则与C++的格式类似。
1。
Java和C语言的区别C语言是面向过程的语言,而Java是面向对象的语言。
下面小编给大家介绍Java和C语言的区别,欢迎阅读!1Java与C语言各自的优势C语言是面向过程的语言,执行效率高;Java是面向对象的语言,执行效率比C语言低。
C语言最关键的是比Java多了指针,这也说明了Java的健壮*,还有Java的多线程机制使程序可以并行运行,Java程序多用于网络。
C语言的安全*不如Java,C语言没有Java的垃圾回收机制,申请的空间要手动释放。
Java的通用*好,可以跨平台直接移植,只要有安装Java虚拟机(JVM)就可以了。
2Java和C语言谁的通用*会比较好在速度上,C语言编写的程序要优于Java,因为Java必须运行在虚拟机的环境中,但是因为虚拟机,Java获得的平台无关*,而C语言的程序有可能需要重新修改编译才能实现平台的移植,另一方面,C语言比Java语言更“底层”,因此可以用C编写例如硬件的驱动,而Java却不行。
Java和C语言还有个明显的不同就是C语言注重的是算法,但是Java却不一样,想用的时候导包就可以了。
C语言的算法很重要,但是Java中的算法没有C语言那么复杂。
打印的方法:C语言是printf("…….");而Java是System.out.print("……."),也可以用println,ln表示换行。
Java程序中的基本数据类型(boolean,char,byte,short,int,long,float,double),是对对象的引用;C语言也有许多种基本类型,还有struct,union,enum,数组和指针。
在Java没有枚举、联合类型。
Java采用Unicode字符集,C语言通常采用的是ASCII字符集,A—65,a—97。
C语言的变量可以不进行初始化,但Java的变量要进行初始化。
在C语言中,char类型占一个字节,在Java中char类型占2个字节。
java,c,c语言之间基本数据类型的比较-wu928320442的专栏-CSDN博客java,c,c++ 语言之间基本数据类型的比较收藏当要进行底层移植的时候肯定会遇到这些问题。
特整理了下。
java语言基本数据类型在JAVA中一共有八种基本数据类型,他们分别是byte、short、int、long、float、double、char、boolean整型其中byte、short、int、long都是表示整数的,只不过他们的取值范围不一样byte的取值范围为-128~127,占用1个字节(-2的7次方到2的7次方-1)short的取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1)int的取值范围为(-2147483648~2147483647),占用4个字节(-2的31次方到2的31次方-1)long的取值范围为(-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)可以看到byte和short的取值范围比较小,而long的取值范围太大,占用的空间多,基本上int可以满足我们的日常的计算了,而且int也是使用的最多的整型类型了。
在通常情况下,如果JAVA中出现了一个整数数字比如35,那么这个数字就是int型的,如果我们希望它是byte型的,可以在数据后加上大写的 B:35B,表示它是byte型的,同样的35S表示short型,35L表示long型的,表示int我们可以什么都不用加,但是如果要表示long型的,就一定要在数据后面加“L”。
浮点型float和double是表示浮点型的数据类型,他们之间的区别在于他们的精确度不同float 3.402823e+38 ~ 1.401298e-45(e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方)占用4个字节double 1.797693e+308~ 4.9000000e-324 占用8个字节double型比float型存储范围更大,精度更高,所以通常的浮点型的数据在不声明的情况下都是double型的,如果要表示一个数据是float型的,可以在数据后面加上“F”。