[Java]基本语法(内容)

  • 1.命名规范

命名的规则:(一定要遵守,不遵守就会报编译的错误)

由26个英文字母大小写,0-9 ,_或 $ 组成  
数字不可以开头。
不可以使用关键字和保留字,但能包含关键字和保留字。
Java中严格区分大小写,长度无限制。
标识符不能包含空格。

Java中的名称命名规范:(不遵守,也不会出现编译的错误)
包名:多单词组成时所有字母都小写:xxxyyyzzz
类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ


  • 2.变量:

1.java中变量按照数据类型来分类:基本数据类型 vs  引用数据类型(数组 类 接口)

  >基本数据类型:
     整型:byte(8 bit)  short   int(默认类型)   long
     浮点型:float double (默认类型)
     字符型:char(‘ ’)
     布尔类型: boolean(只能取值为true 或false,不能取null)

    补充:按照在类中存在的位置的不同:成员变量 vs 局部变量

2.进制(了解)
    十进制  二进制  八进制 十六进制

   二进制:计算机底层都是用二进制来存储、运算。
    >二进制 与十进制之间的转换。
    >二进制在底层存储:正数、负数都是以补码的形式存储的。(原码、反码、补码)
    >四种进制间的转换

3.变量的运算:
   ①自动类型转换:容量小的数据类型自动转换为容量大的数据类型。
    short s = 12;
     int i = s + 2;
    注意:byte  short char之间做运算,结果为int型!
   ②强制类型转换:是①的逆过程。使用“()”实现强转。


  • 3.运算符

运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
算术运算符:
+  -  + - * / % ++ -- +
注意:1) /:   int i = 12;  i = i / 5;
      2) %:最后的符号只跟被模数相同
      3)前++:先+1,后运算     后++:先运算,后+1
      4)+:String字符串与其他数据类型只能做连接运算,且结果为String类型。sysout('*' + '\t' + '*'); vs  sysout("*" + '\t' + '*');
                 
赋值运算符:
=    +=   -=  *=    /=   %=
int i= 12;
i  = i * 5;
i *= 5;//与上一行代码同样的意思
【特别地】
short s = 10;
s = s + 5;//报编译的异常
s = (short)(s + 5);
s += 5;//s = s + 5,但是结果不会改变s的数据类型。


比较运算符(关系运算符)
==  >   <  >=   <=    instanceof  

【注意】区分==  与 =  区别。
进行比较运算操作以后,返回一个boolean类型的值
4>=3  表达的是4 > 3或者 4 = 3.结果是true。

if(i > 1 && i < 10){  }   
不能写为:if(1 < i < 10){}

逻辑运算符(运算符的两端是boolean值)
&   &&  |  ||  ^ !
【注意】区分 &  与 && 的区别,以及 |  与 || 的区别
  我们使用的时候,选择&& , ||

位运算符(两端是数值类型的数据)
<<   >>    >>>  &  |   ^  ~
【例子】1.如何交换m = 12和n = 5的值
             2.将60转换为十六进制输出。
三元运算符
(条件表达式)? 表达式1 : 表达式2;
1)既然是运算符,一定会返回一个结果,并且结果的数据类型与表达式1,2的类型一致
2)表达式1与表达式2 的数据类型一致。
3)使用三元运算符的,一定可以转换为if-else。反之不一定成立。
例子:获取两个数的较大值;获取三个数的最大值。
 


  • 4.流程控制

            4.1分支结构:

                        

1.条件判断:
①if(条件表达式){   }

②if(条件表达式){
    //执行的语句1;
  }else{
    //执行的语句2;
  }

③if(条件表达式1){
    //执行的语句1;
  }else if(条件表达式2){
    //执行的语句2;
  }else if( 条件表达式3){
    //执行的语句3;
  }...
  }else{
    //执行的语句;
  }

【注意】
  1.一旦满足某个条件表达式,则进入其执行语句块执行,执行完毕,跳出当前的条件判断结构,不会执行其以下的条件结构语句。
  2.如果诸多个条件表达式之间为“互斥”关系,多个结构可以上下调换顺序
    如果诸多个条件表达式之间为“包含”关系,要求条件表达式范围小的写在范围大的上面。

2.选择结构
switch(变量){
    case 值1:
    
    //break;
    case 值2:
    
    //break;
    ...
    default:
    
    break;
}

【注意】
1.变量可以为如下的数据类型:byte  short int char 枚举 String 
2.case后只能填写变量的值,不能写范围。
3.default是可以省略的。并且其位置也是灵活的,但是通常将其放在case语句之后。
4.一旦满足某个case语句,则进入执行其操作。直至遇到break或者程序终止。
5.若要判断的语句的条件满足switch变量的数据类型,且值不多的情况下,建议选择switch-case .
  除此之外,选择if-else.


         4.2循环结构

1.格式:
①初始化条件
②循环条件
③迭代部分
④循环体


for(①;②;③){
    ④
}


while(②){
    ④
    ③
}


do{
    ④
    ③
}while(②);

注:1.不同的循环结构之间可以相互转换
      2.while和do-while的区别:do-while程序至少会执行一次

2.嵌套循环:循环结构还可以声明循环。让内层循环结构整体充当外层循环的循环体。
若外层循环执行m次,内层循环执行n次,整个程序执行m*n次。

【题目】
******
******
******
for(int i = 0;i < 3;i++){
    for(int j = 0;j < 6;j++){
        System.out.print("*");
    }
    System.out.println();
}
说明:外层循环控制行数,内层循环控制列数
【例题】1.九九乘法表  2.输出100内的质数。(两种)


3.无限循环结构
for(;;){
   ...
   if(  ){
    break;
   }
   ...
}
或者
while(true){
   ...
   if(  ){
    break;
   }
   ...
}
往往我们在无限循环结构内部提供循环的终止条件,使用break关键字。否则,此循环将无限制的执行下去,形成死循环!
死循环是我们要避免的。


             4.3break && continue

break:
>使用switch-case结构或者循环结构中
>在循环结构中,一旦执行到break,就跳出当前循环。

continue:使用在循环结构中
>一旦执行到continue,就跳出当次循环。


for(int i = 1;i <= 10;i++){
    if(i % 4 == 0){
        //break; //123
        continue;  //123567910
    }

    System.out.print(i);
}


在嵌套循环中,使用带标签的break和continue。
label:for(int i = 1;i < 5;i++){
    for(int j = 1;j <= 10;j++){
        if(j % 4 == 0){
            //break;
            //continue;
            //break label;
            continue label;
        }
        System.out.print(j);
    }
    System.out.println();
}


  • 5.数组

1.声明并初始化
//一维:
int[] i = new int[12];
i[0] = 12;

int[] j = new int[]{12,3};

//二维:
1)String[][] str = new String[4][3]; //4行3列

2)String[][] str1 = new String[4][];
str1[0] = new String[3];
...
str1[3] = new String[5];
3)
int[][] arr = new int[][]{{1,2,3},{4,5},{6}};

2.如何引用二维数组的元素:arr[1][0] = 12;

3.二维数组的长度:arr.length;//3
arr[1].length;//2

4.遍历二维数组

for(int i = 0;i < arr.length;i++){
    for(int j = 0;j < arr[i].length;j++){
        System.out.print(arr[i][j] + "\t");    
    }
    System.out.println();
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值