Java的基础语法之基本数据类型转换,运算符和循环嵌套

1.基本数据类型的转换

     首先,你要明确基本的数据类型有哪些,以及它们分别占有几个字节,还有他们之间的转换顺序。

1.1基本数据类型为:

  1. 整数型:byte(1字节);short(2字节);int(4字节);long(8字节)。
  2. 浮点型:float(4字节);double(8字节)。
  3. 字符型:char(2字节)。
  4. 布尔型:boolean不能和其他其中类型进行转换(因为布尔型只有true和false)。

 1.2基本数据类型的转换规则:

        容量小的转容量大的,可以直接进行转换。eg:

byte a = 6;  
int  b = a;

        需要注意的是: float是4字节,但是由于小数的二进制存储与整数二进制存储结构不同,
                                  4字节的float大于4字节的int,大于8字节的long。

基本数据类型之间的转换顺序为:

 byte->short->char->int->long->float->double       

2.运算符

2.1算术运算符:

+ : 1.加法运算 数值+数值(char可参与运算)
2.字符串连接 数值+字符串 字符串+字符串 == 字符串
- :数值-数值(char可参与运算)
* :数值*数值(char可参与运算)
/ :数值/数值(char可参与运算)
%:取余数 数值/数值(char可参与运算)
++ : 自增1 注意在混合运算时, ++在前先自增 ++在后,后自增
– :自减1,–在前先自增 --在后,后自增

2.2关系(比较)运算符:

>,<,>= ,<=,,!=。
字符型:> ,< ,>= ,<= ,,!= 都是用于数值(char)之间进行大小比较
== != 还可以使用于引用类型之间的比较

2.3赋值运算符:

=,+=,-=, *=, /=, %=(就是把赋值运算符右边的赋值给左边的)

注意:赋值时注意值的类型与声明的数据类型要匹配,同时赋值运算符可以隐式的进行数据类型转换,注意变量类型。

2.4逻辑运算符:

符号的左右是逻辑值

  •         & -- 逻辑与                   

注意:所有的表达式都返回true,结果就是true, 其中有一个为   false,结果就是false。逻辑与 第一个表达式结果为false时, 后面的表达式仍会执行。                                      

  •         &&-- 逻辑与(短路与)   

 注意:所有的表达式都返回true,结果就是true,其中有一个为false, 结果就是false。&& 第一个表达式为false 后面的表达式就不会执行。

  •         |   -- 逻辑或                   

注意:所有的表达式中,只要有一个是true,结果就是true,全部为false,结果为false。如果第一个表达式为true,后面的表达式还会继续执行。

  •         ||  -- 逻辑或(短路或)     

 注意:所有的表达式中,只要有一个是true,结果就是true,全部为false,结果为false。如果第一个表达式为true,后面的表达式不会继续执行。

  •         !---逻辑非                       

eg:System.out.println(!(a>b));//!true --> false

  •         ^ -- 逻辑异或                 

注意:相同为false, 不同为true

2.5条件运算符(三元运算符/三目运算符)

(条件表达式)?表达式1 :表达式2

            先执行条件表达式,
            当条件表达式值为true时, 运行表达式1
            当条件表达式值为false时, 运行表达式2

            最终表达式1和表达式2必须返回一个结果

            eg:

if(num>60){
     System.out.println("成绩合格");
}else{
     System.out.println("成绩不合格");
}
                      

2.6位运算:

指的是对数值的二进制位进行运算
        <<   左移
        >>   右移
        >>>  无符号右移
        &  |  ^  如果左右两边是逻辑值的情况,就是逻辑运算; 如果左右两边不是逻辑值的情况,就是位运算
        ~

3.循环语句

3.1 if语句

if语句的基本结构:

if(条件){
      语句;
}else{
      语句;
}
条件表达式必须是一个返回布尔结果的表达式。语句可以是用{}包含的语句块。
if语句运行图:

 if语句的嵌套结构:

if (条件1){
   语句1;
} else if (条件2){
   语句2;
}……
}else if (条件N){
   语句N;
}

3.2 switch语句

switch语句:多分支选择语句,根据表达式的值,来执行多个操作中的一个。
switch语句的一般结构为:
switch (表达式){
case value1: {
语句1;
break;//结束本次循环
}
…………
case valueN: 
{
语句N;
break;
}
default : {
缺省语句;
}
}

注意:

  • 表达式可以是byte、short、int、char、枚举类型。JDK 7以后,可以使用String类 型;
  • case语句后面只能使用常量表达式;
  • case后的值不能重复;
  • 某个case分支如果没有提供break语句,则继续执行下一个case后的语句;
  • 当表达式的值与任一case子句中的值都不匹配时,将执行default后面的语句;如果没有default子句,则程序直接跳出switch语句。

3.3while & do while 语句

while 语句为如下形式:
while(逻辑表达式)
{ 
语句;
 … ; 
}
执行过程:
先判断逻辑表达式的值。若=true.则执行其后面的语句,然后再次判断条件并反复执行,直到条件不成立为止。
运行过程示意图:

do while 语句为如下形式:

do 
{ 
语句;
 … ; 
} while(逻辑表达式);
执行过程:
先执行语句,再判断逻辑表达式的值,若为true,再执行语句,否则结束循环。
运行过程示意图:

 
3.3 for 循环语句
for 语句为如下形式:
for(表达式1; 表达式2; 表达式3){ 
   语句; 
    … ; 
}

执行过程:

首先计算表达式1,接着执行表达式2,若表达式2的值 = true,则执行循环语句,接着计算表达式3,再判断表达式2的值;依此重复下去,直到表达式2的值=false。
eg:
public static void main(String args[]) {
for (int i = 1; i <= 10; i++) {
System.out.println(“i=" + i);//遍历输出i
}
}
3.4 break & continue语句
break 语句用于终止某个语句块的执行。用在循环语句体中,可以强行退出循环;
continue 语句用在循环语句体中,用于终止某 次循环过程,跳过循环体中 continue 语句下 面未执行的循环,开始下一次循环过程;

4.循环嵌套

  • 将一个循环放在另一个循环体内,就形成了嵌套循环。其中, for ,while ,do…while均可以作为外层循环和内层循环。
  •  实质上,嵌套循环就是把内层循环当成外层循环的循环体。当只有内层 循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当 次循环,开始下一次的循环。
  • 结束外层循环
  • 如果需要从多层循环跳出,则需要使用标签,定义一个标签,如label,然后在需要跳出的地方,用break label就行了.

 5.return 语句

      return语句用于从当前执行的方法中退出, 返回到调用该方法的语句处继续执行。
      有两种格式:
  •        return 表达式; //将表达式的值返回
  •        return; //不返回任何值,当方法说明中用void声明无返回值时, 可以使用这种格式,此类return语句有时可省略

猜你喜欢

转载自blog.csdn.net/weixin_69778508/article/details/129929844