Java基础语法

java

image-20221010200119933

java基础程序设计

关键字

  • 关键字中所有字母都是小写

    image-20221010210436508

    java保留字,当前版本未使用,以后可能会作为关键字使用,goto、const

标识符(Identifier)

  • Java中对各种变量、方法和类等要素命名时使用的字符序列称为标识符
  • 定义合法标识符规则:
    • 由 26 个英文字母大小写,0-9,_或$ 组成
    • 数字不可以开头。
    • 标识符不能包含空格。
    • 不可以使用关键字和保留字,但能包含关键字和保留字。
    • Java 中严格区分大小写,长度无限制

image-20221011080849627

数据类型

image-20221011142103630

变量在类中声明的位置:
成员变量vs局部变量
自动类型提升
  • 当容量小的数据类型和容量大的数据类型做运算时,结果会自动提升为容量大的类型
    byte–>short–>int–>long–>float–>double
    char–>int–>long–>float–>double

当byte short char 做运算,都用int类型接收

强制类型转换
  • 自动类型提升运算的逆运算
package main.foundation;

public class day01 {


    public static void main(String[] args) {
        double i1 = 13.9;
        int m = (int) i1;
        System.out.println(m);
    }
}

image-20221011085519735

image-20221011090832414

String
  • String类型是引用数据类型,字符串
  • String可以和八种基本数据类型做运算,运算只能是连接运算 +

运算符

先运算后取值还是先取值后运算都是针对变量本身,例如a++,其针对的变量是a

image-20221011184748984

赋值运算符
package main.foundation.day01;
public class day01_03 {

    public static void main(String[] args) {
        short h =6;
        h+=2;//不改变变量本身的数据类型
        System.out.println(getType(h));
    }
    public static String getType(Object obj) {
        return obj.getClass().toString();


    }

}

image-20221011190326854

比较运算符

image-20221011191433085

逻辑运算符

image-20221011192150505

位运算符

image-20221011192248950

把数字从十进制转换为二进制,进行左移和右移

三元运算符

image-20221011192721365

  • 条件表达式的结果为boolean类型

  • 根据条件表达式真或假,决定执行表达式1或表达式2,如果表达式为true,则执行表达式1.如果表达式为false,则执行表达式2

  • 三元运算符可以嵌套

package main.foundation.day01;

public class day01_04 {
    public static void main(String[] args) {
//        int m =4;
//        int n=5;
//        int max;
//        max=(m>n)?m:n;
//        System.out.println(max);
 	   	int m=12;
    	int n=12;
    	int max;
        System.out.println((m>n)?"m big":((m == n)?"same":"n big"));


    }
}
运算符的优先级

在这里插入图片描述

流程控制

if-else
package main.foundation.day01;

import java.util.Scanner;

public class day01_05 {
    public static void main(String[] args) {
        Scanner score = new Scanner(System.in);
        System.out.println("岳云鹏成绩");
        int m=score.nextInt();


        if(m ==  100){
            System.out.println("奖励一台Tesla");
        } else if (99 >= m &&80<m ) {
            System.out.println("一台iphone");
        }else if (80 >=m&&m>=60){
            System.out.println("一台ipad");
        }else {
            System.out.println("nothing");
        }


    }
}
Switch- case
         语法:switch(表达式) {
                          case 目标值1:
                                 执行语句1
                          break;
    
                          case 目标值2:
                                执行语句2
                          break;
    
                          case 目标值n:
                               执行语句n
                          break;
    
                         default:
                              执行语句n+1  
                          break;

      •表达式:(将要匹配的值)取值为byte、short、int、char, JDK5以 后可以是枚举,JDK7以后可以是String
       
           表达式类型有:
                       整型:byte、short、int
                       字符:char
                       字符串:String
                       枚举

           *case:后面跟的是要和表达式进行比较的值(被匹配的值)
  
           *break:表示中断,结束的意思,用来结束switch语句(break不写的话会一直执行下去直到遇到break)
    
           *default:表示所有情况都不匹配的时候,就执行该处的内容,和if语 句的else相似。



While
条件1
While(条件2){
	条件3;
	条件4;
}
注意:写while循环千万不要丢掉条件四
break,continue关键字的使用
break:switch-case和循环结构中使用 结束当前循环
continue:循环结构中 结束当次循环
相同点:关键字后面都不可以有执行语句

数组

  • 数组(Array),是多个相同类型的数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。
  • 数组属于引用数据类型
  • 数组分类

按照维数:一维数组,二维数组 …
按照数组元素的类型:基本数据类型元素的数组,引用数据元素的数组

静态初始化
int[] nums = new int[]{12,13,14,5,6};
动态初始化
String[] nusm = new String[5];
//调用数组的指定元素:通过角标的方式调用
//数组的角标(或索引)从0开始的,到数组的长度-1结束

//数组元素的默认初始化值
   > 数组元素是整形 0
   > 数组元素是浮点型 0.0
   > 数组元素是char型
   > 数组元素是boolean:false
   > 数组元素是引用数据类型:null

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ULKEy92Z-1665575002788)(D:\Typora markdown\picgo picture\image-20221012110953865.png)]

二维数组
  • 一维数组array1作为另一个一维数组array2的元素存在,其实从数组的底层运行机制来看,并没有多维数组

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gzsAOmI5-1665575002789)(D:\Typora markdown\picgo picture\image-20221012191743928.png)]

Arrays工具类的使用

在这里插入图片描述

在这里插入图片描述

数组常见异常
  • 数组角标越界的异常:ArrayIndexOutOfBoundsExcetion

  • 空指针异常:NullPointerException

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值