关于数组运算符流程控制的总结
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于数组运算符流程控制的总结相关的知识,希望对你有一定的参考价值。
数组
概念:相同数据类型元素的集合。
可以存储基本数据类型,也可以存储引用数据类型。
写法:
一、声明数组并分配内存,同时将其初始化。静态数组。
int [] a = new int [] {1,2,3,4,5];
二、声明的同时,根据指定的长度分配内存。动态数组。
Employee [] e = new Employee [10] (Employee是自定义类)。
三、相对简略的写法。
int [] b = {1,2,3,4,5};
长度:length属性
创建数组的时候必须指定其长度,且一经定义,不可改变。
调用方法:int [] b1 = new int [] {1,2,3,4,5,6,7};
System.out.println(b1.length);
该数组长度为7,但内存实际给8个位置。另外一个存储“7”。
赋值:
C语言中,不能将数组直接赋值给另一个数组;
Java中允许这样做,两个数组引用同一内存。
访问:
数组名字[索引] 例如:a[1];
System.out.println(a[1]);
注意:索引从0开始;
索引的数据类型为整型;
索引最大值和数组长度始终差1。
迭代:
第一种:for循环
For (int i=0; i<a.length; i++){
System.out.println(a[i]);
}
第二种:增强for循环 (企业开发较常用)
写法:for(数组元素的类型 临时变量名字 :数组的名字){
System.out.println(临时变量名字 );
}
即:
for(int x:a){
System.out.println(x);
}
运算符
四类运算符:
算术运算符;位运算符;比较运算符;逻辑运算符
注意:1、除了==及!=、+外,其他运算符都只针对基本数据类型;
2、==及!=也可以对引用类型进行运算;
3、+还可以对字符串进行连接操作。
算术运算符:
+ ,- ,* ,/ ,% ,a>b ? true : false
位运算符:
先转化成二进制再运算。两大类:
1、 与(&)或(|)非(~)异或(^)
例题:int c = 5, d; //5: 0000 0101; 12: 0000 1100
d = c^12; //异或:相同为0,不同为1
System.out.println(d); //0000 1001 结果为9
d = c & 12; //与:全部是1结果才是1,其余为0
System.out.println(d); //0000 0100 结果为4
d = c | 12; //或:只要有一个是1,结果就是1,其余为0
System.out.println(d); //0000 1101 结果为13
d = ~c; //非:+1取反
System.out.println(d); //-(5+1) == -6
2、 移位运算符:<<、>>(有符号右移)、>>>(无符号右移);
左移1位相当于乘以2,右移1位相当于除以2。
例题: int a=8,c; // a原值:0000 1000
c = a>>2; //移动后:0000 0010
System.out.println(c); //c值为2
比较运算符:
类型:==,<,>,<=,>=,!=
除了==和!=外,其余都只能比较基本数据类型。
==和!=还可以比较引用类型(比较虚地址)。
注意:比较运算符的返回值为true或false。
逻辑运算符
应用:用于连接两个boolean类型的表达式
类型:&&(双与),||(双或),&(与),|(或),^(异或),!(非)
注意:&&与&的运算结果是相同的,对于&而言无论左边为什么值,右边都参与运算; 对于&&来说,只要左边为false右边就不再运算,直接返回false。
||与|的运算结果是相同的,对于|而言无论左边为什么值,右边都参与运算;对于||来说,只要左边为true右边就不再运算,直接返回true。
&&和||可以理解为物理上的短路,实际中多用&&及||
流程控制
类型:顺序流程,分支流程,循环流程
分支流程
If条件表达式可以是任何一种逻辑表达式。
如果表达式值为true,则执行花括号的内容后,再执行后面的语句。
如果表达的值为false,则直接执行后面的语句。
格式:
if(表达式){
语句块;
}
else{
语句块;
}
switch表达式的值只可以接受int、byte、char、short 型、枚举、String,不接受其他类型的值,不允许有重复的case取值;
switch一旦碰到第一次case匹配,程序就会跳转到这个标签位置,开始顺序执行以后所有的程序代码,而不管后面的case条件是否匹配,直到碰到break语句为止。
格式:
switch (表达式)
{
case 取值1:语句块1; break; //如果没有break,将会继续执行后面的case语句。
…
case 取值n:语句块n; break;
default: 语句块n+1
}
循环流程
while语句
格式:
while (条件表达式)
{
执行语句块;
}
do … while语句
格式:
do
{
执行语句块;
} while(条件表达式 );
for循环
格式:
for(初始化表达式;循环条件表达式;循环后的执行语句块1)
{
执行语句块1; //条件成立
}
执行语句块2; //条件不成立
break
用于终止某个语句块的执行。用在循环语句体中,可以强行退出循环。
break语句可以出现在while、do…while、for、switch语句体中。
continue
用在循环语句体中,用于终止某次循环过程,跳过循环体中continue语句下未执行的循环,开始下一次循环过程。
continue语句只能出现在循环语句while、do…while、for中。
以上是关于关于数组运算符流程控制的总结的主要内容,如果未能解决你的问题,请参考以下文章