ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:100.57KB ,
资源ID:10589839      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10589839.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java数据类型初学者入门.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java数据类型初学者入门.docx

1、java数据类型初学者入门Java中有两种数据类型 基本数据类型 即int/char等这样的数值类型,共8种 引用类型 除了基本数据类型之外都是引用类型 包括API中的类,比如String、File也包括自定义的类,如PersonalAccount,CreditAccount 包括数组,如int,String基本数据类型8种基本数据类型 数据类型位数取值范围说 明byte 8-128127数据存储在内存中的最原始形态short 16-3276832767int 32-231231-1 long 64-263263-1 float 32略double 64略char 16u0000uFFFF b

2、oolean 1true/false基本数据类型转换程序中经常会遇到要将数据类型进行转换的情况(如:在一个表达式中存在不同类型的操作数时),Java的数据类型转换比C控制得更为严格; 数据类型转换有两种情况:自动类型转换强制类型转换自动类型转换自动类型转换也称作隐式类型转换;将一种类型的变量赋值给另一种类型的变量时,只要满足以下条件,就会发生自动类型转换 两种类型之间相互兼容 目标类型大于源类型(即类型提升) 如: char ch = A; int num = ch; float f = num; double d = f; /类型转换自动发生,无需显式说明类型提升规则有类型提升的情况下,编译

3、器将自动进行类型转换,否则就要进行强制类型转换; 类型提升应遵循如下规则:两种类型必须兼容,且目标类型大于源类型,例如: byte、char和short类型都可以提升为int型。 对于表达式而言,其最终结果将会与表达式中最高的数据类型相同。强制类型转换强制类型转换也称作显式类型转换;如果被转换的值的数据类型大于其目标类型,将会丢失部分信息;如: int x = 65; char ch = x;这样的语句将报错,因为char类型精度低于int类型,编译器无法将其自动转换,只能进行强制转换: int x = 65; char ch = (char)x;基本数据类型的扩展System.out.pri

4、ntln(Integer.MAX_VALUE);/打印最大整数:2147483647 System.out.println(Integer.MIN_VALUE);/打印最小整数:-2147483648相应的浮点数:System.out.println(Float.MAX_VALUE) System.out.println(Float.MIN_VALUE)双精度:System.out.println(Double.MAX_VALUE) System.out.println(Double.MIN_VALUE)Float输出的有效位数为7位,总位数为8位?为什么?首先说一下: 范围是3.4E-38

5、3.4E+38,可提供7位有效数字。 上述这两个量都是近似值,各个编译器不太一样的。 下面我就将标准值是怎么定义的,和你说一下: 这个比较复杂,建议你找一下IEEE754标准看一下。 这个简单说一下吧: 在IEEE754标准中进行了单精度浮点数(float)和双精度数浮点数(double)的定义。float有32bit,double有64bit。它们的构成包括符号位、指数位和尾数位。 这些位的构成如下: 种类-符号位-指数位-尾数位- float-第31位(占1bit)-第30-23位(占8bit)-第22-0位(占23bit) double-第63位(占1bit)-第62-52位(占11bi

6、t)-第51-0位(占52bit) 取值范围主要看指数部分: float的指数部分有8bit(28),由于是有符号型,所以得到对应的指数范围-128128。 double的指数部分有11bit(211),由于是有符号型,所以得到对应的指数范围-10241024。 由于float的指数部分对应的指数范围为-128128,所以取值范围为: -2128到2128,约等于-3.4E38 +3.4E38 精度(有效数字)主要看尾数位: float的尾数位是23bit,对应78位十进制数,所以有效数字有的编译器是7位,也有的是8位引用数据类型的定义 在Java中,除了上述基本数据类型的变量以外,其余的全都

7、属于引用数据类型, 包括 API中的类,如String、File等 数组(后续学习) 自定义的类,如Cars、Student对象全部是引用数据类型引用类型使用的场景与基本数据类型完全一样 作为属性的类型使用 作为方法的返回值类型使用 作为方法的形式参数类型使用 引用数据类型的赋值 引用类型都是对象,所以赋值都使用new调用构造方法进行赋值 例外:String类可以直接使用=赋值,不使用new,后续详细学习 基本类型和引用类型的区别基本数据类型 引用数据类型 概念 变量(单纯的值) 对象(引用) 存储位置 在栈中存值 在栈中存引用,在堆中存具体对象的属性值 赋值方式 直接赋值 new ,Stri

8、ng类和包装器类可以直接赋值 基本数据类型赋值 基本数据类型之间赋值,是将值进行拷贝 例:int x=10; int y=9; x=y; 把y赋值给x,就是把9拷贝给x,x和y依然是两个内存地址,没有影响引用类型的赋值都是通过new调用构造方法 例:Student stu1 = new Student(“Alice”,18); Student stu2 = new Student(“John”,17);引用类型之间赋值,是虚地址之间的赋值 例:stu1=stu2; stu2赋值给stu1,指的是把stu2的虚地址赋值给stu1,也就是二者将指向同一个实际对象John=运算 在判断引用数据类型时

9、判断的是地址,即虚地址一样才返回true在判断基本数据类型时判断的是数值,即二进制一样才返回true这里最好不要举String的例子,String比较特殊,有两种赋值方法,内存分配不同,后续学习。 可以创建Student类,创建两个对象,属性值完全相同,但是用=比较返回false。说明比较的是虚地址。 另外,比较0.3=0.3f 以及 0.5=0.5f,理解=比较基本数据类型的原理 3 java.lang包简介java.lang包是java内置的一个基础包,其中包含了一系列程序中经常要用到的类; 在默认情况下,每个java程序都会自动导入该包,因此无需在程序中显式地声明。String类Java

10、中,字符串是String类的对象; Java中,String是引用数据类型;可以通过使用String类提供的方法来完成对字符串的操作;创建一个字符串对象之后,将不能更改构成字符串的字符;每当更改了字符串版本时,就创建了一个新的字符串对象,并在其内包含所做的修改,原始字符串保持不变。String s1=“abc”;s1=“def”;修改s1的内容时,并不是直接将abc修改为def,而是在新的内存空间存储了def这个字符串内容,原始的abc保持不变。因此,String被称为不可变类。String类的构造方法String类的构造方法共有13种重载方式,以下是常用的几个:String类构造方法示例pu

11、blic class StringDemo public static void main(String args) char aryChar = I, C, S, S; String str1 = “ETC; /利用一个字符串常量值创建新的字符串 String str2 = new String(“ICSSETC); /利用一个字符型数组创建新的字符串 String str3 = new String(aryChar); System.out.println(str1); System.out.println(str2); System.out.println(str3); 可见,字符串除了

12、使用new调用构造方法创建对象外,还可以使用=直接赋值。正因为这点,很多初学者会把String类与int等同,作为基本数据类型看待。 实际上,String是一个引用类型。字符串长度String类中提供length成员方法 ,用来获得字符串的长度,方法原型:int length()该方法返回字符串中有效字符的个数。public class StringDemo public static void main(String args) String str1 = John Smith; String str2 = new String(I Love Java); System.out.printl

13、n(str1.length(); System.out.println(str2.length(); 字符串比较要判断两个字符串是否相等,可以使用“=”运算符和equals()方法,但是得到的结果可能不完全相同(String覆盖了Object类的equals方法);=运算符用于比较两个引用是否指向同一个对象;而equals()方法则是比较两个字符串中的内容是否相同,其原型: boolean equals(Object anObject) 如果相等返回true,否则返回false。其中覆盖equals方法可以在继承中再学习强调,此处只需要知道String可以调用equals方法即可为了提高性能,

14、JAVA在创建字符串时提供了有限制的池操作public static void main(String args) String str1=123; String str2=123“; System.out.println(str1=str2); String str3=234; String str4=new String(234); System.out.println(str3=str4); 字符串比较示例public class StringDemo public static void main(String args) String str1 = “ICSS, str2 = “IC

15、SS; String str3 = new String(“ETC), str4 = new String(“ETC); if (str1 = str2) System.out.println(str1和str2指向同一字符串); else System.out.println(str1和str2分别指向不同字符串); if (str1.equals(str2) System.out.println(str1和str2的内容完全相同); else System.out.println(str1和str2的内容不相同); if (str3 = str4) System.out.println(s

16、tr3和str4指向同一字符串); else System.out.println(str3和str4分别指向不同字符串); if (str3.equals(str4) System.out.println(str3和str4的内容完全相同); else System.out.println(str3和str4的内容不相同); 充分了解用=为字符串赋值以及用new对字符串赋值的区别 =赋值是从实例池中查找,如果有相同内容的,即引用使用,否则就初始化并存储到实例池。 而new赋值,不管内容是否相同,都初始化一个新的字符串字符串其它的比较方法注意,字符串比较大小,即比较它们的字典顺序,不能使用 比

17、较,而是使用compareTo方法。字符串搜索如果需要搜索某个字符(或某个子串)在字符串中是否出现过,这就要使用到indexOf方法和lastIndexOf方法。字符串搜索示例public class StringDemo public static void main(String args) String strEmail = java; int index; System.out.println(E-mail地址: + strEmail); index = strEmail.indexOf(); System.out.println(字符出现的索引: + index); index =

18、strEmail.indexOf(sun); System.out.println(字符串sun出现的索引: + index); index = strEmail.lastIndexOf(a); System.out.println(a字符最后一次出现的索引: + index); 提取字符串public class StringDemo public static void main(String args) String str1 = Java is OOP; String str2 = new String(“icss); System.out.println(str1.charAt(2)

19、; System.out.println(str1.substring(5); System.out.println(str1.substring(2, 9); System.out.println(str1.concat(str2); System.out.println(str1 + str2); System.out.println(str1.replace(a, e); System.out.println(str1.trim(); 更改字符串的大小写形式有时候,我们需要将字符串中字符的大小写形式进行转换。更改大小写形式示例public class StringDemo public static void main(String args) String str1 = Java is OOP; String str2; str2 = str1.toLowerCase(); System.out.println(str2); str2 = str1.toUpperCase(); System.out.println(str2); 数据格式转化在某些特定的场合,我们可能需要将字符串转化成其它格式的数据进行操作;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1