1、高级软件人才实作培训专家高级软件人才实作培训专家!Java Java 预热班讲义预热班讲义高级软件人才实作培训专家高级软件人才实作培训专家!课前提问l什么是程序l举出生活中的一个“程序”的实例l在控制台输出自己的个人信息高级软件人才实作培训专家高级软件人才实作培训专家!JAVA编程基础lJava语法格式l变量以及数据类型l运算符l语句l对象和类l数组lString类高级软件人才实作培训专家高级软件人才实作培训专家!Java语法格式任何一种语言都有自己的语法规则,任何一种语言都有自己的语法规则,Java也一样,也一样,既然是规则,那么知道其如何使用就可以了。既然是规则,那么知道其如何使用就可以了
2、1.代码都定义在类中,类由class来定义。2.代码严格区分大小写。3.Java中的标识符与关键字。4.代码的阅读性与注释的作用。5.main函数的作用。程序的入口保证程序的独立运行被JVM调用高级软件人才实作培训专家高级软件人才实作培训专家!JVMlJava虚拟机(JVM)是Java Virtual Machine的缩写,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能模拟来实现的。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。l虚拟机把字节码(.class文件)编译成机器码,编译成机械码后计算机才可以识别高级软件人才实作培训专家
3、高级软件人才实作培训专家!Java中的标识符l可简单理解为在Java程序中为了增强阅读性自定义的名称。比如:类名,函数名,变量名等。l规则:由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组成,注意:不能以数字开头,不能是关键字注意:不能以数字开头,不能是关键字。关键字:被Java语言赋予特殊意义的单词。高级软件人才实作培训专家高级软件人才实作培训专家!Java中的常量常量:程序中固定的,不变化的量。比如:整数,小数等。l整数进制(计算机存储数据的方式)二进制:0 1(计算机使用二进制来处理和存储所有数据)八进制:07 0开头 例:024(不太常用)十六进制:09 AF 0 x开头
4、例:0 x2a4e十进制:09规律:进制越大,数的表示长度越短。规律:进制越大,数的表示长度越短。l为什么要出现这么多进制?为什么要出现这么多进制?使用二进制表示一个数据时会很长,使用其他进制减少数字长度高级软件人才实作培训专家高级软件人才实作培训专家!Java中的常量l进制之间的转换l二进制转换:二进制到十进制:2的次方相加二进制到八进制:每三位截取生成数字二进制到十六进制:每四位截取生成数字l十进制转换成二进制,对2整除取余数l十进制转换成十六进制,对16整除去余数高级软件人才实作培训专家高级软件人才实作培训专家!Java中的常量l浮点型:就是小数,根据精确度不同(在内存中所占空间不同),
5、分单精度和双精度l布尔型:true(对)false(错)l字符型:用单引号表示如,a 1l字符串型:用双引号表示“abc”“a”和a区别?l空常量:null,表示对象的引用为空 高级软件人才实作培训专家高级软件人才实作培训专家!Java的变量l变量的概念:变量的概念:内存中的一个存储区域该区域有自己的名称(变量名)和类型(数据类型)该区域的数据可以在同一类型范围内不断变化l为什么要定义变量:为什么要定义变量:用来不断的存放同一类型的常量,并可以重复使用l使用变量注意:使用变量注意:变量的作用范围(一对之间有效)初始化值l定义变量的格式:定义变量的格式:数据类型数据类型 变量名变量名 =初始化值
6、初始化值;注:格式是固定的,记住格式,以不变应万变。注:格式是固定的,记住格式,以不变应万变。高级软件人才实作培训专家高级软件人才实作培训专家!Java变量的数据类型数据类型基本数据类型引用数据类型数值型字符型(char)布尔型(boolean)整数类型(byte,short,int,long)浮点类型(float,double)类(class)接口(interface)数组()整型默认:int 浮点型默认:double高级软件人才实作培训专家高级软件人才实作培训专家!Java基本数据类型数据类型大小(位)范围用途byte(字节)8-128127 0 short(短整型)16-3276832
7、767 0int(整型)32-2147483648 21474836470long(长整型)64-9233372036854477808 92333720368544778070L float(浮点型)32-3.40292347E+38 3.40292347E+380.0fdouble(双精度)64-1.79769313486231570E+308 1.79769313486231570E+3080.0dchar(字符型)16u0000uFFFFu0000boolean(布尔型)1true/falsefalse高级软件人才实作培训专家高级软件人才实作培训专家!变量声明public class
8、VariableTest public static void main(String args)double a=1.0;int b=3;float c=34.89675f;System.out.println(双精度变量的值为:+a);System.out.println(整型变量的值为:+b);System.out.println(“单精度变量的值为:+c);高级软件人才实作培训专家高级软件人才实作培训专家!类型转化l数据类型转换:解决不同类型之间的数据计算问题。l自动类型转换(也叫隐式类型转换)从存储范围小的类型到存储范围大的类型。具体规则为:byteshort(char)intlon
9、gfloatdouble也就是说byte类型的变量可以自动转换为short类型 示例代码:byte b=10;short sh=b;这里在赋值时,首先将这里在赋值时,首先将b的值转换为的值转换为short类型,然后再赋值给类型,然后再赋值给sh在类型转换时可以跳跃。示例代码:byte b1=100;int n=b1;高级软件人才实作培训专家高级软件人才实作培训专家!类型转化l强制类型转换(显式类型转换)从存储范围大的类型到存储范围小的类型l具体规则为:doublefloatlongintshort(char)bytel语法格式为:(转换到的类型)需要转换的值l该类类型转换很可能存在精度的损失,
10、所以必须书写相应的代码,并且能够忍受该种损失时才进行该类型的转换。示例代码:double d=3.10;int n=(int)d;这里将double类型的变量d强制转换成int类型,然后赋值给变量n。需要说明的是小数强制转换为整数,采用的是“去1法”,也就是无条件的舍弃小数点的所有数字,则以上转换出的结果是3。高级软件人才实作培训专家高级软件人才实作培训专家!Java的运算符运算符是一种特殊符号,用以表示数据的运算、赋值和比较,运算符共分以下几种:算术运算符赋值运算符比较运算符逻辑运算符高级软件人才实作培训专家高级软件人才实作培训专家!算术运算符高级软件人才实作培训专家高级软件人才实作培训专家
11、算术运算符的注意问题l“+”除加法运算外,还可以作为连接符,如:“4”+123;的结果是“4123”。l如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。但被模数是负数就另当别论。l对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。例如:int x=3510;x=x/1000*1000;实际运行结果是多少,想想为什么?高级软件人才实作培训专家高级软件人才实作培训专家!赋值运算符=,+=,-=,*=,/=,%=例:int a,b,c;a=b=c=3;int a=3;a+=5;等同运算a=a+5;思考:short s1=1;s1=s1+1;有没
12、有错误?short s1=1;s1=s1+1;错误,因为s1是短整型(弱),1默认为int 型(强),s1=s1+1无法将强整型转换为弱整型,必须强制类型 转换。正确答案short s1=1;s1=(short)(s1+1);short s1=1;s1+=1;有没有错误?short s1=1;s1+=1;正确,因为+=为赋值运算符,可以自动类型 转换 高级软件人才实作培训专家高级软件人才实作培训专家!比较运算符l注1:比较运算符的结果都是boolean型,也就是要么是true,要么是false。l注2:比较运算符“=”不能误写成“=”。高级软件人才实作培训专家高级软件人才实作培训专家!逻辑运算
13、符l逻辑运算符用于连接布尔型表达式,在Java中不可以写成3x3&x6。l“&”和“&”的区别:单与时,左边无论真假,右边都进行运算;双与时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。l“|”和“|”的区别同理,双或时,左边为真右边不参与运算。l“”异或与“|”或得不同之处是:当左右都为true时,结果为false。高级软件人才实作培训专家高级软件人才实作培训专家!练习:算数运算符lint a=5,b=12,d=10,c;lc=a+b;/加法lc=b/a;/除法lc=b%a;/取模lc=d+;/递增lc=-d;/递减l控制台输入c的值高级软件人才实作培训专家高级软件人才实作培训专家!练习:算数运算符lint a=5,b=12,d=10,c;lc=a+b;/加法lc=b/a;/除法lc=b%a;/取模lc=d+;/递增lc=-d;/递减l控制台输入c的值高级软件人才实作培训专家高级软件人才实作培训专家!练习:逻辑运算符lboolean i=true,j=false;lboolean or=i|j,and=i&j;lboolean not=!i;l控制台输出or 和 and 的值高级软件人才实作培训专家高级软件人才实作培训专家!作业l为抗震救灾,工作人员连续作战89小时,编程计算共多少天零多少小时多少分多少秒l自定义一个整数,输出该数分别与1-10相乘的结果






