JAVA基础
来源:互联网 发布:weibull++软件下载 编辑:程序博客网 时间:2024/05/16 04:46
Java概述
1992年java由sun公司创建,2009年oracle收购sun公司,Java技术已经成为世界上最卓越的企业应用和移动应用开发平台之一。Java的特点:简单的、面向对象的、分布式的、解释的、健壮的、安全的、结构中立的、可移植的、高效的、多线程的、动态的语言。Java运行机制:Java语言是一种特殊的高级语言,他既具有解释型语言的特点,也有编译型语言的特点,因此Java程序需要经过先编译、后解释执行两步。(偏重于解释型语言)
java数据类型与运算符
1. Java的注释
注释:注释用来解释说明某段代码的作用、某个类的用途、某个方法的动能……注释不会执行。
Java中包括:单行注释、多行注释(块注释)、文档注释三种
◆单行注释: //注释内容
◆多行注释: /*
注释内容
…….
注释内容
*/
◆文档注释: /**
*注释内容
*…….
*注释内容
*/
2.Java标示符的定义原则和关键字▼标示符:所谓标示符就是给程序中类、方法、变量命令的有效字符序列。标示符可以简单理解为一个名字。
▼标示符命名规则:
Java语言中标示符必须以字母、下划线(_)、美元符号($)开头,后面可以跟上任意数目的字母、数字、下划线(_)、美元符号($)。此处的字母不仅仅是26个英文字母,还可以是中文字符、日文字符……. 标示符=1个字母/下划线/美元符号+n个字母/数字/下划线/美元符号
注意:标示符不能包括空格,不能使用java的关键字和保留字和直接量,标示符的长度不受限制。
由于Java采用的Unicode编码,因此Java的标示符可以使用Unicode能够表示的任意字符。Java语言严格区分大小写,因此Abc和abc是不用的标示符。
Java数据类型
Java语言是强类型,每一个表达式或者变量都有一个在编译时就确定好了的类型,所有变量需要先声明后使用。
Java中数据类型包括基本数据类型和引用数据类型(复杂数据类型)两大类
8种 数组、类、接口
★基本数据类型(4类8种)
整数类:byte、short、int、long。
字符类:char
浮点类:float、double.
布尔类:boolean
Java中八中基本数据类型除了boolean类型外,都可以进行相互转换,有两种转换方式:自动和强制转换。
自动类型转换
条件:类型兼容、目标类型的范围大于源类型的范围
强制类型转换
Eg:
int a = 12;
byte b = (byte)a; //强制类型转换
doublea = 12.5;
intb = (int)a; //强制类型转换
注意:强制转换可能导致精度丢失或错误结果,所以不可随意滥用。
运算符
算术运算符
+、-、*、/、%(取模、取余)
案例:
public classTest1{
public static void main(String[] args){
int a = 10;
int b = 3;
int c1 = a+b;
int c2 = a-b;
int c3 = a*b;
int c4 = a/b;
int c5 = a%b;
System.out.println(a+"+"+b+"="+c1);
System.out.println(a+"-"+b+"="+c2);
System.out.println(a+"*"+b+"="+c3);
System.out.println(a+"/"+b+"="+c4);
System.out.println(a+"%"+b+"="+c5);
}
}
自增自减运算符
++(自增)、--(自减)
案例一:
publicclass Test1{
public static void main(String[] args){
int a = 10;
int b = 10;
a++;// a = a+1;
++b;// b = b+1;
System.out.println(a);//11
System.out.println(b);//11
}
}
分析:单独写a++或者++a时,都是相当于a=a+1.
关系运算符
>、>=、<、<=、==、!=
注意:==是判断相等,得到布尔值 true或false
=是赋值
逻辑运算符
&&(与)、||(或)、!(非)
位运算符
&(与)、|(或)、^(异或)
赋值运算符
=
注意:==是判断相等,得到布尔值 true或false
=是赋值
流程控制与数组
一、 程序的三种结构
基本上所有编程语言中,程序都有三种结构:顺序结构、分支(选择)结构、循环结构顺序结构:自上而下的逐行执行代码。
选择结构:根据逻辑判断,有选择的执行其中某部分代码。
循环结构:根据逻辑判断,重复执行某个代码块。
一、 分支(选择)结构程序设计
★if分支
◆单分支
语法:
if(表达式){
代码块;
}
说明:
如果表达式的值为true,则执行代码块,否则不执行。
二路分支(双分支)
语法:
if(表达式){
代码块1;
}else{
代码块2;
}
说明:
如果表达式的值为true,则执行代码块1,
如果表达式的值为false,则执行代码块2.
多路分支
语法:
if(表达式1){
代码块1;
}else if(表达式2){
代码块2;
}else if(表达式3){
代码块3;
}
…….
…….//中间可以有n个 else if
……..
else{//最后这个else可有可无
代码块n;
}
说明:
如果表达式1的值为true,则执行代码块1,如果表达1的值为false,则判断表达式2
如果表达式2的值为true,则执行代码块2,如果表达式2的值为false,则判断表达式3
如果表达式3的值为true,则执行代码块3,如果表达式3的值为false,则判断表达式4
…….
…….
如果都不成立,则进入else中执行代码块n。
switch分支
switch是多分支语句
语法:
switch(表达式){
case 值1:代码块1;
break; //break不是必须的,根据情况而定
case 值2:代码块2;
break;
……
…...
……
default:代码块n; //default可有可无
}
注意: JDK6 中表达式的类型只能为 byte short int char
JDK7中表达式的类型只能为 byte short int char String
说明:
根据switch后面表达式的值,去依次和case后面的值匹配,遇到匹配的就从这个case进入,执行后面的代码块,不再判断后面的case、default标签的值是否匹配,他会一直往下执行,直到遇到break才会停止。
如果没有遇到匹配的,就执行break后面的代码块。
一、 循环结构程序设计
★while循环
语法:
while(循环条件){
代码块/循环体;
}
说明:
首先判断循环条件是否为true,如果为true则进入循环体执行,执行完成后自动回到前面再次判断循环条件,如果为true则进入循环体执行,执行完成后又回到前面再次判断,依次循环,直到循环条件为false则循环结束。
do…while循环
语法:
do{
代码块/循环体;
}while(循环条件);
说明:
首先进入循环体执行,执行完成后判断循环条件是否成立,如果条件成立回到前面再次执行循环体,执行完成又判断循环条件是否处理,如果条件成立回到前面执行循环体,依次循环,直到循环条件不成立,则循环截止。
for循环
语法:
for(表达式1;表达式2;表达式3){
循环体;
}
说明:
表达式1:初始化变量
表达式2:循环条件
表达式3:循环增量
首先执行表达式1 –》判断表达式2,如果表达式2成立,则执行循环体,循环体执行完成后,执行表达式3。执行完3,又判断表达式2是否成立….依次循环,直到表达式2不成立循环截止。
总结:while是先判断,再执行 do…while先执行,后判断
do…while至少执行一次。一、 分支、循环嵌套
在实际应用中,往往单独使用分支结构或则循环结构不能解决所有问题,很多情况下面需要使用分支和循环结构的嵌套。
★分支中嵌套分支结构
一、 循环的控制 break、continue
break语句除了可以用在switch语句中,还可以用在循环体中。在循环体中遇见break语句,立即结束循环,跳到循环外,执行循环结构后面的语句。break语句用于结束整个循环。
continue语句用于结束本次循环,即在循环体中遇见continue语句,则循环体中continue语句后面的语句不会执行,接着进行下一次循环的判定。
一、 数组、一维数组
数组是所有编程语言只用一种常用的数据结构,它用来存储多个相同类型的数据。
JAVA中的数组要求数组中元素的类型一致。一旦数组初始化完成,数组在内存中所占用的空间被固定下来,因此数组的长度是不可变的。
★数组的定义
类型[]数组名;//常用 int[] a; double[] b;char[] c
类型数组名[];// int a[]
★数组的初始化
◆静态初始化
初始化时由程序员显示的指定每个数组元素的初始值,由系统决定数组的长度。
◆动态初始化
初始化时程序员只指定数组的长度,而不指定数组中元素的值,系统自动给数组分配初始值。
访问数组元素
数组中每个元素都有一个下标,下标从0开始:访问数组元素可以根据数组下标。数组内存分析
栈:基本数据类型变量值,引用类型变量的地址值
堆:引用类型的真实值
一、 二维数组、多维数组
二维数组:
二维数组就是存放一维数组的数组,一个二维数组可以看做多个一维数组。
数组的定义
类型[][]数组名;//常用 int[][] a;
类型数组名[][];// int a[][]
数组的初始化
◆静态初始化
初始化时由程序员显示的指定每个数组元素的初始值,由系统决定数组的长度。
◆动态初始化
初始化时程序员只指定数组的长度,而不指定数组中元素的值,系统自动给数组分配初始值。
多维数组:
Java中没有多维数组,所有的数组都可以看做一维数组。
- Java基础01:基础
- Java基础:基础加强
- Java基础-基础
- java基础的基础
- JAVA基础---基础常识
- Java基础:基础加强
- [Java 基础]基础语法
- Java基础
- java基础
- java 基础
- java基础
- Java基础
- Java基础
- Java基础
- JAVA基础
- JAVA基础
- JAVA基础
- java基础
- Leetcode c语言-Roman to Integer
- Trucking HDU2962
- const、static、extern的用法
- 美国高通 Snapdragon Neural Processing Engine SDK (SNPE) 系列 (2):支持的网络层
- 微信小程序input表单页面实例,redio和下拉列表获取数据
- JAVA基础
- Linux内核学习笔记
- Elasticsearch-terms搜索及结果优化
- 模拟进程队列管理——按照优先级出列
- Mybatis 之 ParameterHandler
- 【NOI2010T2】超级钢琴-主席树+优先队列
- 启动hadoop时的两个警告
- 【CUGBACM15级BC第33场 A】hdu 5186 zhx's submissions
- Linux学前知识2