黑马程序员
Java编程基础
Java的基本语法(1)
java代码的位置位于类中,用关键字class表示。
java是严格区分大小写的
java是一种自由格式的语言
代码分为结构定义语句和功能执行语句
功能执行语句的最后必须用分号结束
java程序有三种注释方式 //注释单行代码(可以嵌套在/*...*/中);/*code...*/注释夹在中间的代码(这种格式的注释是不可以嵌套的);/**code...*/也可以注释多行,是专门生成java注释文档的格式。
Java的基本语法(2)
java中的标识符
java中的包、类、方法、参数和变量的名字,可由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组成,但标识符不能以数字开头,不能是关键字
java的关键字:abstract do implement private this boolean double import protected throw break else instanceof public throws byte extend int return transient case false interface short true catch final long static try char fianlly native strictfp void class float new super volatile continue for null switch while default if package synchronized
java中的常量(1)
整型常量
十进制(12) ,十六进制 (0x12),八进制(012)
长整型常量
13L
单精度浮点数
5.1f,.4f ,2e3f ,0f
双精度浮点数
5.1,.4,2e-3,0d
布尔常量
true和false
java中的常量(2)
字符常量
‘a’ , ‘8’, '\u0027'
‘\r‘表示接受键盘输入,相当于按下了回车键;
‘\n‘是换行;
‘\t‘是制表符,相当于table键;
‘\b‘是退格键,相当于Back Space;
‘\‘‘是单引号,而‘\“‘是双引号;
‘\\‘是一个斜杠“\”。
字符串常量
“Hello World“,”123”, "Welcome \nXXX"
null常量
null常量只有一个值,用null表示,表示对象的引用为空
变量的概念与作用
变量就是系统为程序分配的一块内存单元,用来存储各种类型的数据。根据所存储的数据类型的不同,有各种不同类型的变量。变量名代表这块内存中的数据 。
int x=0,y;
y=x+3;
执行这两条语句的过程中,内存分配及变化情况。X在被取值前必须被初始化。
java的变量类型
数据类型包括基本数据类型和引用数据类型:基本数据类型又包括数值型(整数类型(byte short int long)浮点型(double float)),字符型,布尔型;引用类型包括类,接口,数组。
变量字节大小及有效取值范围
byte占用一个字节,数字大小为-2^7—2^7 -1
short占用两个字节,数字大小为-2^15—215 -1
int占用四个字节,数字大小为-2^31—231 -1
long占用八个字节,数字大小为-2^63—263 -1
float占用四个字节,数字大小为1.4E^-45~3.4E+38 , -1.4E^-45~-3.4E+38 。用二进制的指数形式表示一个浮点数的格式,如:101*22 , 101*2-3
double占用八个字节,数字大小为4.9E-324~1.7E+308, -4.9E-324~-1.7E+308 。
char占两个字节,数字大小为0—2^16 -1,是unicode编码。字符的本来面目,我们为什么可以直接将一个数字赋给字符变量。Boolean占一个字节,其取值只有两个,true和false。
用''括住字符然后赋给char型变量,实质是将该字符所对应的在Unicode码中对应的数字赋给char变量。
类型转化
自动类型转换(也叫隐式类型转换)
强制类型转换(也叫显式类型转换)
类型转换的原理及什么时候要用强制类型转换
表达式的数据类型自动提升
所有的byte型、short型和char的值将被提升到int型。
如果一个操作数是long型,计算结果就是long型;
如果一个操作数是float型,计算结果就是float型;
分析 System.out.println(‘a’+1)//自动转换成整数类型与
System.out.println(“”+’a’+1)//自动转换成String类型
这就是区别。
一般不能将低精度的赋值给高精度的变量。如果要赋值那么在右边赋的值前面加小括号,小括号中写入左边变量的类型,这种方法叫做强制类型转换。当然是有风险的,可能会发生数值丢失(当高精度类型的变量值超过了低精度变量的最大限度的时候)。如果一个操作数是double型,计算结果就是double型。
变量的生命周期与作用域
变量要先定义,后使用,但也不是在变量定义后的语句一直都能使用前面定义的变量。我们可以用大括号将多个语句包起来形成一个复合语句,变量只能在定义它的复合语句中使用。
函数
函数(子程序)的概念与作用。
定义一个函数的格式
编写打印三个矩形的程序(用流水帐的方式与用函数的方式进行对比分析)。
返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,….)
{
程序代码
return 返回值;
}
其中:
形式参数:在方法被调用时用于接收外部传入的数据的变量。
参数类型:就是该形式参数的数据类型。
返回值:方法在执行完毕后返还给调用它的程序的数据。
返回值类型:函数要返回的结果的数据类型。
实参:调用函数时实际传给函数形式参数的数据。
如何理解函数返回值类型为void的情况:由于函数的定义如此必须有个返回值的的位置,可以不返回任何类型的值,但是得有这个形式。在无返回值的函数中,编译器会自动在程序的末尾添加return语句;如果在函数的某一处添加return语句,则函数执行到这里就返回了。
if...else...语句的使用:如果要在if语句后面执行多条语句,那么这些语句应该被大括号括住;else同理。
if..else...可以嵌套使用。
switch语句的执行顺序是跳转到符合判断的case语句后依次执行代码,直到遇到break。
continue语句只能出现在循环语句(while,do,for)的子语句块中,无标号的continue语句的作用是跳过当前循环的剩余语句块,接着执行下一次循环。
break语句可以中止循环中的子语句和switch语句。一个无标号的break语句会把控制传给当前(最内)循环(while,do.for或Switch)的下一条语句。如果有标号,控制会被传递给当前方法中的带有这一标号的语句。
移位运算的注意事项及小技巧
移位运算符适用类型有byte、short、char、int、long
对低于int型的操作数将先自动转换为int型再移位。
对于int型整数移位a>>b,系统先将b对32取模,得到的结果才是真正移位的位数。例如:a>>33和a>>1结果是一样的,a>>32的结果还是a原来的数字。
对于long型整数移位时a>>b ,则是先将移位位数b对64取模。
移位不会改变变量本身的值。如a>>1;在一行语句中单独存在,毫无意义 。
x>>1的结果和x/2的结果是一样的,x<<2和x*4的结果也是一样的。总之,一个数左移n位,就是等于这个数乘以2的n次方,一个数右移n位,就是等于这个数除以2的n次方。请思考:如何用程序实现求2的x次方。答案:y = 1<< x;
Java空间被分为两部分,一部分叫做栈内存,一部分叫做堆内存
使用数组时应该注意的问题:
空指针异常
如何得到数组长度 从零开始计数
数组越界异常
与数组操作相关的函数
使用System.arraycopy()函数拷贝数组
用Arrays.sort 来排序数组
分享到:
相关推荐
"黑马程序员java基础试题、笔记"这个压缩包资源为Java初学者和希望加入"黑马程序员"培训课程的学员提供了丰富的学习材料。这些资源包括面试问题合集、整理的资料、Android面试题、学员入学面试总结、面试技巧、必须...
在"黑马程序员_Java基础辅导班教程课件[第01期]第13天"中,我们聚焦于Java编程语言的基础知识,这是一门面向初学者的课程,旨在帮助学员快速掌握Java开发的基本技能。第13天的课程通常会涵盖上一天(第12天)所学...
总而言之,《黑马程序员Android学习笔记》是一份全面的学习资源,它不仅教授Android开发的基础,还覆盖了许多实际开发中可能遇到的问题和解决方案。通过深入学习和实践,你将能够熟练掌握Android应用开发,成为一名...
《黑马程序员_从零开始征服Android之旅(第二季)源码和笔记(上)》是一部针对初学者的全面Android开发教程,旨在帮助学员系统地掌握Android应用开发的基础知识和实战技巧。通过本教程的学习,你可以从理论出发,...
这份资料涵盖了从Java编程基础到高级特性的全过程,旨在帮助初学者系统地掌握Java编程语言。 在Java的基础部分,文档将深入讲解Java的语法特性,包括但不限于: 1. **Java环境搭建**:介绍如何安装JDK,配置环境...
### 黑马程序员Android视频教程知识点解析 #### 一、Android基础概述 - **定义与特点**:Android是一种基于Linux内核(不包括GNU组件)的开源操作系统,主要用于移动设备。它由Google公司及其领导下的开放手机联盟...
【标题】:“黑马程序员入学测试题”是一份用于评估编程基础和理解能力的测试集,主要针对准备加入黑马程序员培训课程的学生。这份测试题旨在帮助新手程序员检验自己的知识水平,以便更好地适应学习环境。 【描述】...
在本资源包“黑马程序员 从零开始征服Android之旅(第一季)源码和笔记 下”中,我们聚焦于Android应用程序开发的基础与实践。通过学习,你可以系统地掌握Android开发的核心概念,逐步成长为一名合格的Android开发者...
### 安卓黑马程序员课程知识点概览 #### 1. XML编程 ...以上为“安卓黑马程序员课表”中涉及的主要知识点概览,通过系统的学习与实践,学员能够建立起坚实的IT技术基础,并具备实际项目开发的能力。
根据提供的文件信息,我们可以推断出这是一套由知名IT教育机构“黑马程序员”出品、由讲师...通过系统地学习这些知识点,并辅以实践操作,将有助于建立起扎实的Java编程基础,为进一步深入学习和职业发展打下良好基础。
Java自学宝典是针对初学者和有一定基础的学习者设计的一套完整的Java学习资源,由知名的教育机构黑马程序员出品。这份源代码压缩包包含了书中各个章节的实例代码,旨在帮助学习者深入理解Java编程语言的核心概念和...
2015/2/3 星期二 Android项目开发基础—JNI与底层调用 2015/2/4 星期三 2015/2/5 星期四 Android应用开发-代码版本管理和实战 2015/2/6 星期五 android案例与项目—手机安全卫士 2015/2/7 星期六 android案例与项目...
根据提供的文件信息,这里将对“黑马程序员最新一期高清教学视频”进行详细的解析与扩展,以便更好地理解其中可能涵盖的知识点和技术内容。 ### 黑马程序员教学视频概述 #### 标题解读:“黑马程序员最新一期高清...
在本课程中,“黑马程序员”将引导我们逐步学习如何在短短两小时内编写一个Android应用程序。这个教程特别关注的是第5天的内容,主要涉及到天气预报应用的开发,包括数据获取、数据显示以及网络图片的查看功能。下面...
【Java基础辅导班教程课件概述】 在"黑马程序员_Java基础辅导班教程...通过系统地学习和实践这些材料,初学者将能全面掌握Java编程基础,为进一步深入学习Java EE、JavaFX、Android开发或其他基于Java的技术做好准备。
红孩子电子商城项目,由知名教育机构传智播客和黑马程序员联合推出,旨在为学员提供一套完整的电商系统开发实践案例。该项目涵盖了客户端和服务端的源代码,以及详尽的开发文档,是学习和理解电商系统开发的宝贵资料...
通过这套《黑马程序员_历经5年锤炼(适合初学者入门的Java基础视频)》,初学者能够系统地学习Java的基础知识,为后续深入学习和实战打下坚实的基础。Java作为一种强大的编程语言,在软件开发领域有着不可替代的地位,...
在本课程中,“黑马程序员”将引导我们逐步学习如何在短短两小时内编写一个基础的安卓应用程序。这是一门针对初学者的安卓编程教程,重点在于快速掌握安卓开发的基础概念和实践技能。第03天的课件源码包含了构建安卓...
在本课程中,“黑马程序员”将引导我们快速入门安卓应用程序的开发,这是一段为期两天的密集学习旅程,第01天的课程主要侧重于基础知识的建立和首个安卓程序的编写。通过这次学习,我们将了解到安卓开发环境的搭建、...