Java中的基本数据类型

Java中的基本数据类型
Java中的基本数据类型

Java 中的基本数据类型

Java 中的数据类型可以分为两种:

基本数据类型

整型 byte short int long 浮点型 float double 字符型 char 布尔型 boolean

引用数据类型

可以说,除了基本类型以外的所有类型都是引用数据类型 主要包括类,接口,数组等

如下图所示

基本数据类型在内存中的分配

数据类型

基本数据类型

引用数据类型

数值型

字符型(char ) 布尔型(boolean )

整数类型(byte, short, int, long )

浮点类型(float, double )

类(class ) 接口(interface ) 数组( [ ] )

注意!:表格里的^代表的是次方

基本数据类型的转换

有两种方式:自动转换和强制转换,通常发生在表达式中或方法的参数传递时。

1 自动转换

具体地讲,当一个较“小”数据与一个较“大”的数据一起运算时,系统将自动将“小”数据转换成“大”数据,再进行运算。而在方法调用时,实际参数较“小”,而被调用的方法的形式参数数据又较“大”时(若有匹配的,当然会直接调用匹配的方法),系统也将自动将“小”数据转换成“大”数据,再进行方法的调用,自然,对于多个同名的重载方法,会转换成最“接近”的“大”数据并进行调用。这些类型由“小”到“大”分别为(byte,short,char)--int--long--float—double。这里我们所说的“大”与“小”,并不是指占用字节的多少,而是指表示值的范围的大小。

例如

byte b=10;

int i=b;(将byte数据向int赋值时,完成了自动转换)

char c=’A’;

int i=c;(这时会将’A’对应的ASCII码值赋值给i)

2 强制转换

将“大”数据转换为“小”数据时,你可以使用强制类型转换。

例如:

int n=(int)1.23456;

输出结果为1

可以想象,这种转换肯定可能会导致溢出或精度的下降。

注意

当字节类型变量参与运算,java作自动数据运算类型的提升,将其转换为int类型。

byte b=3;

b=(byte)(b*3);//必须声明byte。

带小数的变量默认为double类型。

float f=1.3f;//必须声明f。

基本数据类型的存储

诸如int a = 3;long b = 255L;的形式来定义的,称为自动变量。值得注意的是:自动变量存的是字面值,不是类的实例,即不是类的引用,这里并没有类的存在。如int a = 3;这里的a是一个指向int类型的引用,指向3这个字面值。这些字面值的数据,由于大小可知,生存期可知(这些字面值固定定义在某个程序块里面,程序块退出后,字段值就消失了),出于追求速度的原因,就存在于栈中。

另外,栈有一个很重要的特殊性,就是存在栈中的数据可以共享。假设我们同时定义:int a = 3;int b=3;编译器先处理int a = 3;首先它会在栈中创建一个变量为a的引用,然后查找有没有字面值为3的地址,没找到,就开辟一个存放3这个字面值的地址,然后将a指向3的地址。接着处理int b = 3;在创建完b这个引用变量后,由于在栈中已经有3这个字面值,便将b直接指向3的地址。这样,就出现了a与b同时均指向3的情况。定义完a与b的值后,再令a = 4;那么,b不会等于4,还是等于3。在编译器内部,遇到时,它就会重新搜索栈中是否有4的字面值,如果没有,重新开辟地址存放4的值;如果已经有了,则直接将a指向这个地址。因此a值的改变不会影响到b的值。

java基本数据类型习题(选择24)

1、下列哪一个是合法的标识符: A、12class; B、+viod; C、-5; D、_black; 2、下列哪一个不是JAVA语言中保留字: A、if; B、sizeof; C、private; D、null; 3、下列描述中正确的一项是: A、标识符首字符的后面可以跟数字; B、标识符不区分大小写; C、复合数据类型变量包括布尔型、字符型、浮点型; D、数组属于基本数据类型; 4、下列哪一项不属于变量的组成部分: A、变量名; B、变量属性; C、变量初值; D、变量大小; 5、下列关于变量组成部分描述正确的一项是: A、变量名不是标识符;

B、变量名是标识符; C、浮点型属于复合类型; D、变量属性分为:基本类型和符合类型; 6、下列选项中,哪一项不属于JAVA语言的简单数据类型: A、整数型; B、数组; C、字符型; D、浮点型; 7、下列关于变量作用域的描述中,不正确的一项是: A、变量属性是用来描述变量作用域的; B、局部变量作用域只能是它所在的方法的代码段; C、类变量能在类的方法中声明; D、类变量的作用域是整个类; 8、下列关于基本数据类型的说法中,不正确的一项是: A、boolean是JAVA非凡的置值,或者为真或者为假; B、float是带符号的32位浮点数; C、double是带符号的64位浮点数; D、char应该上是8位的Unicode字符; 9、下列关于溢出的说法中,正确的一项是: A、一个整型的数据达到整型能表示的最大数值后,再加1,则机器产生上溢,结果为整型的最大值; B、一个整型的数据达到整型能表示的最小数值后,再减1,

Java 基本数据类型取值范围讲解

Java 基本数据类型取值范围讲解 一、Java的类型词语理解: 1) 原始数据类型,简单类型,基本类型都是一个含义; 2)复合类型,扩展类型,复杂类型、引用类型都是一个含义; 3)浮点类型,实数、实型都是一个含义; 4)逻辑型、布尔型都是一个含义; 5)本人个人认同的类型分类: 阅读时需要理解: 定点:定点的意思是把小数点定在末尾,小数点后没有数字的数据,Java中通常把它们称为整数; 常量:就是直接的值; 变量:放置常量的容器,除了放置常量之外,也可以给变量一个运算式,变量中的值是可变的; 二、Java数据类型基本概念: 数据类型在计算机语言里面,是对内存位置的一个抽象表达方式,可以理解为针对内存的一种抽象的表达方式。接触每种语言的时候,都会存在数据类型的认识,有复杂的、简单的,各种数据类型都需要在学习初期去了解,Java是强类型语言,所以Java对于数据类型的规范会相对严格。数据类型是语言的抽象

原子概念,可以说是语言中最基本的单元定义,在Java里面,本质上讲将数据类型分为两种:基本类型和引用数据类型。 基本类型:简单数据类型是不能简化的、内置的数据类型、由编程语言本身定义,它表示了真实的数字、字符和整数。 引用数据类型:Java语言本身不支持C++中的结构(struct)或联合(union)数据类型,它的复合数据类型一般都是通过类或接口进行构造,类提供了捆绑数据和方法的方式,同时可以针对程序外部进行信息隐藏。 三、Java中的数据类型与内存的关系 在Java中,每个存放数据的变量都是有类型的,如: char ch;float x;inta,b,c; ch是字符型的,就会分配到2个字节内存。不同类型的变量在内存中分配的字节数不同,同时存储方式也 是不同的。 所以给变量赋值前需要先确定变量的类型,确定了变量的类型,即确定了数据需分配内存空间的大小,数 据在内存的存储方式。 四、Java数据类型在内存中的存储: 1)基本数据类型的存储原理:所有的简单数据类型不存在“引用”的概念,基本数据类型都是直接存储在内 存中的内存栈上的,数据本身的值就是存储在栈空间里面,而Java语言里面八种数据类型是这种存储模型; 2)引用类型的存储原理:引用类型继承于Object类(也是引用类型)都是按照Java里面存储对象的内存 模型来进行数据存储的,使用Java内存堆和内存栈来进行这种类型的数据存储,简单地讲,“引用”是存储 在有序的内存栈上的,而对象本身的值存储在内存堆上的; 区别:基本数据类型和引用类型的区别主要在于基本数据类型是分配在栈上的,而引用类型是分配在堆上的(需要java中的栈、堆概念), 基本类型和引用类型的内存模型本质上是不一样的。 例1:我们分析一下”==“和equals()的区别。 首先,我定以两个String对象 String a="abc";

Java中八种基本数据类型和八种封装数据类型

Java中八种基本数据类型和八种封装数据类型 初使值的求解过程及比较 作者:Zealjiang 1.八种基本数据类型 创建名为MemberTestBasic的java文件,其内容如下:public class MemberTestBasic { /** 八种基本类型 int, short, float ,double, long, boolean, byte, char */ int i; short s; float f; double d; long l; boolean bo; byte by; char c; public static void main(String[] args) { //创建对象m

MemberTestBasic m=new MemberTestBasic(); m.printMember(); } //为对象m创建一个printMember方法 public void printMember() { System.out.print("int->"+i+"\n"); System.out.print("short->"+s+"\n"); System.out.print("float->"+f+"\n"); System.out.print("double->"+d+"\n"); System.out.print("long->"+l+"\n"); System.out.print("boolean->"+bo+"\n"); System.out.print("byte->"+by+"\n"); System.out.print("char->"+c+"\n"); } } 运行结果如下:

实验3 JAVA基本数据类型

实训报告 实验三JA V A基本数据类型(2) 【实验目的】 1.掌握标识符的定义规则。 2.掌握表达式的组成。 3.掌握Java 基本数据类型及其使用方法。 4.理解定义变量的作用,掌握定义变量的方法。 5.掌握各种运算符的使用及其优先级控制。 6.通过以上内容,掌握Java 语言的编程规则。 【预习内容】 1.一个声明Java 不同数据类型:整形、浮点型、字符型等类型的特点。 2.JAVA各类运算符:算术运算符、关系运算符、逻辑运算符的使用方法。 3. JAVA各类表达式:算术表达式、关系表达式、逻辑表达式的综合应用。 4.熟练掌握JAVA常用输入输出方法的使用。 5.System.out以及Scanner类的使用的。 【实验内容及步骤】 1、请利用Scanner类通过键盘输入三个不同值的整数a、b和c,并将中间值的数显示于屏幕上。 [程序清单] import java.util.Scanner; public class xjp1 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int a,b,c; System.out.print("请输入a:"); a = scan.nextInt(); System.out.print("请输入b:"); b = scan.nextInt();

System.out.print("请输入c:"); c = scan.nextInt(); if(a>b && a>c) { if(b>c) System.out.println("中间值=" + b); else System.out.println("中间值=" + c); } if(b>a && b>c) { if(a>c) System.out.println("中间值=" + a); else System.out.println("中间值=" + c); } if(c>a && c>b) { if(a>b) System.out.println("中间值=" + a); else System.out.println("中间值=" + b); } } } [程序运行结果(截图)] 2、、请利用Scanner类通过键盘输入两个整型变量a,b的值,输出a+b,a-b,a*b,a/b,(float)a/b,a%b的结果,要求连同算式一起输出,每个算式占一行。 例:a等于10,b等于5, a+b的结果输成 10+5=15

java的基本数据类型有八种

java的基本数据类型有八种 各位读友大家好!你有你的木棉,我有我的文章,为了你的木棉,应读我的文章!若为比翼双飞鸟,定是人间有情人!若读此篇优秀文,必成天上比翼鸟! java的基本数据类型有八种四类八种基本数据类型1. 整型byte(1字节)short (2个字节)int(4个字节)long (8个字节)2.浮点型float(4个字节)double(8个字节)3.逻辑性boolean(八分之一个字节)4.字符型char(2个字节,一个字符能存储下一个中文汉字)基本数据类型与包装类对应关系和默认值short Short (short)0int Integer 0long Long 0Lchar Char '\u0000'(什么都没有)float Floa t0.0fdouble Double 0.0dboolean Boolean false 若某个类的某个成员是基本数据类型,即使没有初始化,java也会确保它获得一个默认值,如上所示。(这种初始化方法只是用于成员变量,不适用于局部变量)。jdk1.5支持自动拆装箱。可以将基本数据类型转换成它的包装类装箱Integer a = new Integer ();a = 100;拆箱int b = new Intger(100);一个字节等于8位,一个字节等于256个数,-128到127一个英文字母或一个阿拉伯数字就是一个字符,占用一个字节一个汉字两个字符,占用两个字节基本数据类型自动转换byte->short , char->int->longfloat->doubleint ->floatlong->double小可转大,大转小会失去精度。字符串与基本类型或其他类型间的转换⑴其它

Java基本数据类型详解——全英文

Java Basic Data Types Variables are nothing but reserved memory locations to store values. This means that when you create a variable you reserve some space in memory. Based on the data type of a variable, the operating system allocates memory and decides what can be stored in the reserved memory. Therefore, by assigning different data types to variables, you can store integers, decimals, or characters in these variables. There are two data types available in Java: 1.Primitive Data Types 2.Reference/Object Data Types Primitive Data Types: There are eight primitive data types supported by Java. Primitive data types are predefined by the language and named by a key word. Let us now look into detail about the eight primitive data types. byte: Byte data type is a 8-bit signed two.s complement integer. Minimum value is -128 (-2^7) Maximum value is 127 (inclusive)(2^7 -1) Default value is 0 Byte data type is used to save space in large arrays, mainly in place of integers, since a byte is four times smaller than an int. Example : byte a = 100 , byte b = -50 short: Short data type is a 16-bit signed two's complement integer. Minimum value is -32,768 (-2^15) Maximum value is 32,767(inclusive) (2^15 -1) Short data type can also be used to save memory as byte data type. A short is 2 times smaller than an int Default value is 0. Example : short s= 10000 , short r = -20000

java基本数据类型练习题

1 . 用8位无符号二进制数能表示的最大十进制数为 ( C ) A. 127 B. 128 C. 255 D. 256 2 .以下能作为char类型的字面值的有( B ) A. "e" B. 'f' C. '\u12' D. '\u0012' E. '\n' 3 . byte变量的取值范围是( B ) A. 0~65535 B. -128~127 C. -256-255 D. 0~32767 4. 以下选项中正确的有(AC ) A. int i = 32; B. float f = 45.32; C. double d=3.2; D. double d=9.21D; 5 .假定x和y为double型,则表达式x=2,y=x+3/2的值是( D ) A. 3.5 B. 3 C. 2.0 D. 3.0 6 .下列对于>>和>>>操作符描述正确的是( ) A.当左面的操作数是正数时,>>和>>>结果相同。 B. B. (-1 >> 1)的结果是0。 C. C. (-1 >>> 1) 的结果是-1。 D. 只有在右面的操作数大于等于1时, >>> 才会返回负数。 7 .有如下一段代码: 1)public class ReturnIt{ 2) returnType methodA(byte x, double y){ 3) return x/y*2; 4) } 5) } 在第2行中,方法methodA的有效返回类型returnType应该是?(D) A. int B. byte C. short D. double 8. 下列代码的执行结果是( D ) 1)public class Beirun{ 2) public static void main(String args[]){ 3) float t=9.0f; 4) int q=5; 5) System.out.println((t++)*(--q)); 6) } 7)} A. 40 B. 40.0 C. 36 D. 36.0 9.下列代码的执行结果是( D ) 1)public class Beirun{ 2) public static void main(String args[]){ 3) System.out.println(5/2); 4) } 5)} A. 2.5 B. 2.0 C. 2.50 D. 2 10. 下列代码的执行结果是( B ) 1)public class Beirun{ 2) public static void main(String args[]){

java中基本数据类型的取值范围

我们前面提到变量的声明格式:变量类型变量名; 这里我们学习JAVA的数据类型. 数据类型可以分为两大类: 1)基本类型; 2)扩展类型。 本节中,我们就一起来学习一下Java语言的基本数据类型。它包括类型描述取值范围 Boolean 布尔型只有两个值true、false Char 字符型 Byte 8位带符号整数 -128到127之间的任意整数 Short 16位无符号整数 -32768~32767之间的任意整数 Int 32位带符号整数 -2^31到2^31-1之间的任意整数 Long 64位带符号整数 -2^63到2^63-1之间的任意整数 Float 32位单精度浮点数根据IEEE754-1985标准 Double 64位双精度浮点数根据IEEE754-1985标准 一些提示: 不象其它程序设计语言,Java语言中的整型的位数是固定的,而不会根据硬件平台以及操作系统的不同而不同。 1> boolean型 在上一章的逻辑运算符中,我们就已经看到过了取值为true和false的变量,这种变量称为boolean型变量。 实例说明 源程序:test601.java public class test601 { public static void main(string args[]) { boolean x=true; boolean y=false; System.out.println("x&&y="+(x&&y)); System.out.println("x||y="+(x||y)); System.out.println("x^y="+(x^y)); System.out.println("!x="+(!x)); } }

java基本数据类型与其封装类

java基本数据类型与其封装类 1 Boolean VS boolean public final class Boolean extends [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Object.html]Object[/url]implements [url=file:///G:/html_zh_CN/html/zh_CN/api/java/io/Serializable.html]Serializable[/url], [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Comparable.html]Comparable[/url]<[url=fil e:///G:/html_zh_CN/html/zh_CN/api/java/lang/Boolean.html]Boolean[/url]> Boolean 类将基本类型为boolean的值包装在一个对象中。一个Boolean类型的对象只包含一个类型为boolean的字段。 此外,此类还为boolean和String的相互转换提供了许多方法,并提供了处理boolean时非常有用的其他一些常量和方法。 2 Byte VS byte public final class Byte extends [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Number.html]Number[/url]implements [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Comparable.html]Comparable[/url]<[url=fil e:///G:/html_zh_CN/html/zh_CN/api/java/lang/Byte.html]Byte[/url]> Byte类将基本类型byte的值包装在一个对象中。一个Byte类型的对象只包含一个类型为byte的字段。 此外,该类还为byte和String的相互转换提供了几种方法,并提供了处理byte时非常有用的其他一些常量和方法。 3 Character VS char public final class Character extends [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Object.html]Object[/url]implements [url=file:///G:/html_zh_CN/html/zh_CN/api/java/io/Serializable.html]Serializable[/url], [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Comparable.html]Comparable[/url]<[url=fil e:///G:/html_zh_CN/html/zh_CN/api/java/lang/Character.html]Character[/url]> Character类在对象中包装一个基本类型char的值。Character类型的对象包含类型为char的单个字段。 此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。 4 Double VS double public final class Double extends [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Number.html]Number[/url]implements [url=file:///G:/html_zh_CN/html/zh_CN/api/java/lang/Comparable.html]Comparable[/url]<[url=fil e:///G:/html_zh_CN/html/zh_CN/api/java/lang/Double.html]Double[/url]> Double类在对象中包装了一个基本类型double的值。每个Double类型的对象都包含一个double类型的字段。 此外,该类还提供了多个方法,可以将double转换为String,将String转换为double,还提供了其他一些处理double时有用的常量和方法。

Java的原始数据类型一共就8个

Java的原始数据类型一共就8个,分别是:byte、short、int、long、boolean、char、float、double。注意这些是大小写敏感的,而Boolean是boolean的封装类(wrapper class)。 在java中一个类只能有一个直接父类,但是可以实现多个接口,在继承的同时可以实现接口,之所以取消多继承的原因是多继承使得代码产生很多问题,而使 用单一继承则可以使代码更可靠。 Java有四种访问类型,分别为:public、protected、default、private,其中public变量可以被所有的外部类访问,而protected可以被同一个包及该类的子类访问,default即没有任何修饰符的变量,可以被同一个包中的类访问,而private变量只能在该类内部被访问。题目中的外部类应该理解为除该类自身的所有其他类,因此只有使用private可以达到要求。 类文档API的内容主要是:类层次、类及用途描述、成员变量列表、构造方法列表、成员方法列表、从类层次上继承的方法列表、成员变量的详细说明、构造方法详细说明、成员方法详细说明。 类中有几种变量,分别是:局部变量(local\automatic\temporary\stack variable)是定义在方法里的变量;实例变量(instance valriable)是在方法外而在类声明内定义的变量,有时也叫成员变量;类变量(class variable)是用关键字static声明的实例变量。它们的生存期分别是:局部变量在定义该变量的方法被调用时创建,而在该方法退出后被撤销;实例变量在使用newr Xxxx()创建该类的实例时被创建,而其生存期和该类的实例对象的生存期相同;类变量在该类被加载时被创建,不一定要用new Xxxx()创建,所有该类的实例对象共享该类变量,其生存期是类的生存期。任何变量在使用前都必须初始化,但需要指出的是局部变量必须显式初始化。而实例变量不必,原始类型的实例变量在该类的构造方法被调用时为它分配的默认值,整型是0,布尔型是false,而浮点型是0.0f,引用类型(类类型)的实例变量的默认值是null(没有进行实际的初始

Java语言基本数据类型、转换及其封装

Java语言基本数据类型、转换及其封装Java语言基本数据类型、转换及其封装 1. 逻辑类型 ·常量 true,false。 ·变量的定义 使用关键字boolean来定义逻辑变量: boolean x; boolean tom_12; 也可以一次定义几个: boolean x,tom,jiafei,漂亮 x,tom,jiafei,漂亮都是变量的名字。定义时也可以赋给初值: boolean x=true,tom=false,漂亮=true,jiafei 2.整数类型 ·常量123,6000(十进制),077(八进制),0x3ABC(十六进制)。 ·整型变量的定义分为4种: 1.int 型 使用关键字int来定义int型整形变量 int x int tom_12 也可以定义几个: int x,tom,jiafei,漂亮 x,tom,jiafei,漂亮都是名字。定义时也可以赋给初值: int x=12,tom=-1230,漂亮=9898,jiafei 对于int型变量,分配给4个字节byte,一个字节由8位(bit)组成,4个字节占32位(bit)。bit 有两状态,分别用来表示0,1。这样计算机就可以使用2进制数来存储信息了。内存是一种特殊的电子元件,如果把内存条放大到摩天大

楼那么大,那么它的基本单位——字节,就好比是大楼的房间,每个房间的结构都是完全相同的,一个字节由8个能显示两种状态的bit组成,就好比每个房间里有8个灯泡,每个灯泡有两种状态——亮灯灭灯。 对于 int x=7; 内存存储状态如下: 00000000 00000000 00000000 00000111 最高位:左边的第一位,是符号位,用来区分正数或负数,正数使用原码表示,最高位是0,负数用补码表示,最高位是1。例如: int x=-8; 内存的存储状态如下: 11111111 11111111 11111111 11111000 要得到-8的补码,首先得到7的原码,然后将7的原码中的0变成1,1变成0,就是-8的补码。 因此,int型变量的取值范围是-2^31~2^31-1。 2. byte型 使用关键字byte来定义byte型整型变量 byte x ; byte tom_12; 也可以一次定义几个: byte x,tom,jiafei,漂亮 x,tom,jiafei,漂亮都是名字。定义时也可以赋给初值: byte x=-12,tom=28,漂亮=98,jiafei 注:对于byte型变量,内存分配给1个字节,占8位,因此byte型变量的取值范围是: -2^7~2^7-1。

第二章JAVA的基本数据类型

第2章Java的基本数据类型 本章试验的主要任务是正确理解和掌握Java基本类型数据的使用方法,包括:掌握各种不同类型数据之间的转换规则、运算规则;学会使用Java运算符、表达式,掌握运算符的优先级、表达式的运算规则。 2.1 实验一:Java 的基本类型数据的应用 1. 实验目的 1) 了解Java的基本数据类型的特点; 2) 掌握各种类型变量的声明、赋值、转换及运算方式。 2. 实验要求 编写并实现程序,完成对基本类型变量的声明、赋值,并对变量进行简单运算输出运算结果。 3. 实验内容 实验示例 2.1.1. 在程序中实现对整型变量的定义、赋值、运算并输出运算结果。执行程序并分析运算结果。 使用Jcreator开发工具完成实验,其操作步骤如下: ⑴执行JCreator,进入JCreator开发环境窗口; ⑵为了方便起见,关闭一些视图窗口,只留下编辑和常规输出(Build Output)窗口(如图2-1所示); ⑶执行“File”→“New”菜单下的“File…”项,在“File Wizard”对话框的文件名栏中输入“Practice2_1”,根据需要,可以改变文件路径。一般来说,可以创建一个文件夹,用该文件夹来存放你开发程序,例如E:\javaTest; ⑷新建文件后,在编辑窗口输入如图2-1中所示的java程序源代码; ⑸完成代码的输入之后,执行“Build”菜单中的“Compile File”命令项或单击工具栏上的编译按钮编译源程序文件; ⑹完成编译之后,执行“Build”菜单中的“Execute File”命令项或单击工具栏上的运行程序按钮执行程序。执行结果如图2-2所示。 下边我们来分析一下程序及程序的输出结果: 在程序中,定义了两个字节(byte)变量b1和b2、两个短整型(shortt)变量s1和s2、两个整型(int)变量i1和i2、两个长整数变量(long)l1和l2,并分别对它们进行了简单的赋值运算。最后分别输出它们的十进制值,s1的二进制表示形式的值,l2十六进制表示形式的值。

2.JAVA的基本数据类型,运算符和流程控制_选择题

1. 以下能作为char类型的字面值的有:() A “e” B ‘f’ C ‘\u12’ D ‘\u0012’ 2. byte变量的取值范围是:() A 0 - 65535 B -128 – 127 C -256 – 255 D 0 - 32767 3. 以下选项中正确的有:() A int i = 32; B float f = 45.32; C double d=3.2; 4. 假定x和y为double型,则表达式x=2,y=x+3/2的值是(D) A 3.500000 B 3 C 2.000000 D 3.000000 5. 下列对于>>和>>>操作符描述正确的是?() A 当左面的操作数是正数时, >> 和 >>> 结果相同。 B (-1 >> 1)的结果是0。 C (-1 >>> 1) 的结果是 -1。 D 只有在右面的操作数大于等于1时, >>> 才会返回负数。 6. 有如下一段代码: 1)public class ReturnIt{ 2) returnType methodA(byte x, double y){ 3) return x/y*2; 4) } 5) } 在第2行中,方法methodA的有效返回类型returnType应该是?() A int B byte C short D double 7. 根据以下程序选择正确答案:() public class Test{ static int total = 10;

public static void main(String args []) { new Test(); } public Test (){ System.out.println("In test"); System.out.println(this); int temp = this.total; if (temp > 5) { System.out.println(temp); } } } A 编译出错 B 运行时有异常 C 编译运行都正确 8. 以下switch表达语句正确的是:() A public void switchTest (char c){switch(c){…}} B public void switchTest(long c){switch(c){…}} C public void switchTest(byte c){switch(c){…}} D public void switchTest(double c){switch(c){…}} 9. int i=1,j=10; do{ if(i++>--j) continue; }while(i<5); 上面的代码执行后,i和j的值各是多少?() A i=6 j=5 B i=5 j=5 C i=6 j=4 D i=5 j=6

JAVA中常用数据类型之间转换的方法

Java中常用数据类型之间转换的方法 Java中几种常用的数据类型之间转换方法: 1.short-->int转换 exp:short shortvar=0; int intvar=0; shortvar=(short)intvar 2.int-->short转换 exp:short shortvar=0; int intvar=0; intvar=shortvar; 3.int->String转换 exp:int intvar=1; String stringvar; Stringvar=string.valueOf(intvar); 4.float->String转换 exp:float floatvar=9.99f; String stringvar;

Stringvar=String.valueOf(floatvar); 5.double->String转换 exp double doublevar=99999999.99; String stringvar; Stringvar=String.valueOf(doublevar); 6.char->String转换 exp char charvar=’a’; String stringvar; Stringvar=String.valueOf(charvar); 7String->int、float、long、double转换Exp String intstring=”10”; String floatstring=”10.1f”; String longstring=”99999999”; String doubleString=”99999999.9”; Int I=Integer.parseInt(intstring); Float f=Integer.parseInt(floatstring); Long lo=long.parseInt(longstring); Double d=double.parseInt(doublestring); 8String->byte、short转换

Java中的基本数据类型

Java 中的基本数据类型 Java 中的数据类型可以分为两种: 基本数据类型 整型 byte short int long 浮点型 float double 字符型 char 布尔型 boolean 引用数据类型 可以说,除了基本类型以外的所有类型都是引用数据类型 主要包括类,接口,数组等 如下图所示 基本数据类型在内存中的分配 数据类型 基本数据类型 引用数据类型 数值型 字符型(char ) 布尔型(boolean ) 整数类型(byte, short, int, long ) 浮点类型(float, double ) 类(class ) 接口(interface ) 数组( [ ] )

注意!:表格里的^代表的是次方 基本数据类型的转换 有两种方式:自动转换和强制转换,通常发生在表达式中或方法的参数传递时。 1 自动转换 具体地讲,当一个较“小”数据与一个较“大”的数据一起运算时,系统将自动将“小”数据转换成“大”数据,再进行运算。而在方法调用时,实际参数较“小”,而被调用的方法的形式参数数据又较“大”时(若有匹配的,当然会直接调用匹配的方法),系统也将自动将“小”数据转换成“大”数据,再进行方法的调用,自然,对于多个同名的重载方法,会转换成最“接近”的“大”数据并进行调用。这些类型由“小”到“大”分别为(byte,short,char)--int--long--float—double。这里我们所说的“大”与“小”,并不是指占用字节的多少,而是指表示值的范围的大小。 例如 byte b=10; int i=b;(将byte数据向int赋值时,完成了自动转换) char c=’A’; int i=c;(这时会将’A’对应的ASCII码值赋值给i) 2 强制转换 将“大”数据转换为“小”数据时,你可以使用强制类型转换。 例如: int n=(int)1.23456; 输出结果为1 可以想象,这种转换肯定可能会导致溢出或精度的下降。 注意 当字节类型变量参与运算,java作自动数据运算类型的提升,将其转换为int类型。

java的基本数据类型

byte(字节) 8 -128 - 127 0 shot(短整型) 16 -32768 - 32768 0 int(整型) 32 -2147483648-2147483648 0 long(长整型) 64 -9233372036854477808-9233372036854477808 0 float(浮点型) 32 -3.40292347E+38-3.40292347E+38 0.0f double(双精度) 64 -1.79769313486231570E+308-1.79769313486231570E+308 0.0d char(字符型) 16 ‘ \u0000 - u\ffff ’ ‘\u0000 ’ boolean(布尔型) 1 true/false false 1. Java的简单类型及其封装器类 Java基本类型共有八种,基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。实际上,JAVA 中还存在另外一种基本类型void,它也有对应的包装类https://www.360docs.net/doc/b06396124.html,ng.Void,不过我们无法直接对它们进行操作。8 中类型表示范围如下: byte:8位,最大存储数据量是255,存放的数据范围是-128~127之间。 short:16位,最大数据存储量是65536,数据范围是-32768~32767之间。 int:32位,最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1。 long:64位,最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1。 float:32位,数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F。 double:64位,数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加。 boolean:只有true和false两个取值。 char:16位,存储Unicode码,用单引号赋值。 Java决定了每种简单类型的大小。这些大小并不随着机器结构的变化而变化。这种大小的不可更改正是Java程序具有很强移植能力的原因之一。下表列出了Java中定义的简单类型、占用二进制位数及对应的封装器类。

Java基本数据类型

Java基本数据类型 Java是一种强类型语言,即Java中的每一个变量都必须有一个声明的类型。在Java中,有两种类型: 基本类型(primitive type) 有八种 逻辑类boolean 文本类char 整数类byte, short, int, long 浮点类double, float 本章主要讲述基本数据类型。 一.逻辑类──boolean 与C语言不同,Java定义了专门的布尔类型。布尔类型的文字只有两个,

它们是true和false。布尔类型的变量使用关键字boolean来定义。布尔型的文字和变量常常被用在条件判断语句中。 注意:在Java中,布尔型变量不是数值型变量,它不能被转换成任意一种类型。数值型变量也不能被当作布尔型变量使用。这一点和C语言完全不同。 以下是一个有关boolean类型变量的声明和初始化: boolean truth = true; 二.文本类──char和String 1、使用char类型可表示单个字符。一个char代表一个16-bit无符号的(不分正负的)Unicode字符。一个char文字必须包含在单引号内(…?)。 …a? …\t? 一个制表符 …\u????? 一个特殊的Unicode字符。????应严格按照四个16进制数字进行替换 和在C语言中一样,Java也支持转义字符。Java中使用“\”将转义字符与一般的字符区分开来。 Java中的转义字符

2、String不是原始类型,而是一个类(class),它被用来表示字符序列。字符本身符合Unicode标准,且上述char类型的反斜线符号适用于String。与C和C++不同,String不能用\0作为结束。 String 不是一个原始数据类型,它是一个类 具有用双引号引用的文字 “The quick brown fox jumped over the lazy dog.” 可按如下情形使用: String greeting = “Good Morning!! \n”; String err_meg = “ record not found !”; 三.整数类──byte, short, int, long 在Java编程语言中有四种整数类型,每种类型可使用关键字byte, short, int 和long中的任意一个进行声明。 整数类型的文字可使用十进制、八进制和16进制表示,如下所示: 2 十进制值是2 047 首位的0表示这是一个八进制的数值 0xBBAC 首位的0x表示这是一个16进制的数值 注意──所有Java编程语言中的整数类型都是带符号的数字。 整数数据类型—范围 Integer Length Name or Type Range 8 bits byte -2 7 ... 2 7 -1 16 bits short -2 15 ... 2 15 -1 32 bit int -2 31 ... 2 31 -1 64 bits long -2 63 ... 2 63 -1 int是最常用的整数类型。但是如果你要表达很大的数,比如在地理信息系

JAVA中8中基本数据类型默认值

java 8种基本数据类型的默认值 (2007-07-12 09:50:19) 转载▼ 标签: 默认值 8种基本数据类型(primitive type)在只做了声明,而未被初始化的时候,他们的默认值 8种基本数据类型分别是:byte,short,int,long,(四种整型) char() float,double(两种浮点型) boolean(一种用于表示真假的类型) 他们的默认值分别是: 可以用以下代码测试: PrimitiveType.java public class PrimitiveType{ boolean t; char c; byte b; short s; int i; long l; float f; double d; void print(){ System.out.println("boolean "+t); System.out.println("char "+c); System.out.println("byte "+b); System.out.println("short "+s); System.out.println("int "+i); System.out.println("long "+l); System.out.println("float "+f); System.out.println("double "+d); } public static void main(String args[]){ PrimitiveType pt=new PrimitiveType(); pt.print(); }

} 得出的结果为: byte:0 short:0 int:0 long:0 char: _ float:0.0 double:0.0 boolean: false 除了这8种基本类型以外的变量(比如String,基本类型的数组),他们的默认值都是null ××××××××××××××××××××××××××××××××××× 各种变量(无论是基本的变量,还是其他对象类型的变量,数组类型的变量) 他们在没有被显示初始化的时候,jdk 都会自动赋予默认值给他们, 只不过要注意的是全局变量和局部变量的不同之处: 当全局变量没有被显示初始化,jdk会自动赋予默认值给他,并且,当你在其他地方引用该变量的时候,编译器是不会报错的。 而局部变量在没有被显示初始化情况下,jdk 同样也会自动赋予他默认值,可不同之处就在于,你无法引用他,因为编译器会在你要引用的位置报错。 这就是JDK的规定。 所以局部变量在声明的时候,最好直接显示初始化他。 可以尝试将上面的代码改成以下的,看看问题是怎么出现的。 public class PrimitiveType{ public static void main(String args[]){ boolean t; char c; byte b; short s; int i; long l; float f; double d;

相关文档
最新文档