java自学日记2

本周学习的内容主要是流程控制及数组,对于有c++基础的初学者来说这部分内容学习可能较为容易。

一、流程控制

1.1、复合语句
与c语言和其他语言相同,java的复合语句是以整个块区为单位的语句。复合语句由开括号“ { ”开始,由“ } ”结束。
需要注意的是,复合语句为局部变量创造了一个作用域,在该作用域中某个变量可以被创造并使用,但在作用域外使用,则会出错。下面就是错误操作。

public class Com {
	public static void main(String args[])
	{
		int a=5;
		System.out.println(a);
	}
	System.out.println(a);
 
}

第二条输出是错误的。

1.2、条件语句
1.2.1、if条件语句
1、简单的if条件语句
语法如下:

if(布尔表达式)
{
   语句序列
}

如果布尔表达式返回ture,则执行语句块语句,反之则不执行。如果if后面的复合语句块只有一条语句时,也可省略“{}”。

int a=100;
if(a==100)
    System.out.println(a);

2、if…else多分支语句
针对同一事情的多种情况进行处理,满足什么条件就执行哪一语句。

if(条件表达式)
{
   语句序列1
}
else if(条件表达式2)
{
   语句序列2
}
...
else if(表达式n)
{
   语句序列n
}  

1.2.2、switch 多分支语句
语法如下

switch(表达式)
{
  case 常量值1:
       语句块1
       [break;]
  ...
  case 常量值n:
       语句块n
       [break;]
  default:
       语句块n+1
       [break;]
}

以一个简单明了的方式实现“多选一”,switch语句中表达式的是必须是整型、字符型或字符串类型。如果表达式的值和某个case后面地常量值相同则从该语句以此执行,直到遇到break结束。default语句为可选的,若没有一个常量值和表达式的值相等,则执行default语句,若无default,则switch不做任何处理。
1.3、 循环语句
1、 while 循环语句
语法如下:

while(条件表达式)
{
  执行语句
}

当条件表达式的返回值为真时,执行语句块语句,执行完后重新判断条件表达式是否为真,若为真,则继续执行,反之跳出循环。

while(x==5);
System.out.println("x的值为5");

可以注意到while()后面加了" ;",这样程序会认为要执行一条空语句,而进入无限循环。
2、do…while 循环语句
语法如下:

do
{
  执行语句
}
while(条件表达式)

它与上面的while循环基本相同,不同之处在于,它的语句块中的语句至少被执行一次。
3、for 循环语句
(1)for 语句
语法如下:

for(表达式1;表达式2;表达式3)
{
  语句序列
}
for(int i=0;i<10;i++)

表达式1:初始化表达式,完成变量初始化;
表达式2:循环条件表达式,值为boolean型的表达式,指定循环条件;
表达式3:循环后操作表达式,修整变量,改变循环条件。
(2)、foreach 语句
语法如下:

for(元素变量x:遍历对象 obj)
{
  引用了x的java语句;
}

foreach在遍历数组等方面提供了极大方便。

二、数组

2.1、一维数组
创建一维数组并分配内存:

//声明一维数组两种方式
数组元素类型 数组名字[];
数组元素类型[] 数组名字;
//分配内存
数组名字 = new 数组元素的类型[数组元素的个数]//声明的同时为数组分配空间
数组元素的类型 数组名=new 数组元素的类型[数组元素的个数];

数组元素类型决定数组数据类型,数组元素的个数即数组的长度。
使用new关键字为数组分配空间时,整型数组中各元素初始值都为0

一维数组初始化两种形式

int a=new int[]{1,2,3,4,5};
int a2[]={1,3,7};

2.2、二维数组的创建和应用
二维数组的第一个下标代表元素所在行,第二个下标代表元素所在列。

//声明形式
数组元素类型 数组名字[][];
数组元素类型[][] 数组名字;
//分配内存
a=new int[2][5];//行长度为2,列长度为5
//为每一维数组分配
a=new int[2][];
a[0]=new int[3];
a[1]=new int[4];

二维数组初始化

int a[][]={{3,5,8},{1,2,3}}

第一行数组的初始值为3,5,8;第二行数组初始值为1,2,3

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值