JavaSE第五天——基础语法

一、多变量类型和作用域

1、变量

  • 变量是用来存储数据的容器。每个变量都有一个特定的类型,该类型决定了变量可以存储什么类型的数据

  • 变量的使用必须遵循“先声明,后使用”的原则。

  • 变量的声明包括指定变量的名称和类型,而变量的初始化则是为变量分配内存空间并设置初始值

  • 变量类型可以分为两大类:基本类型(Primitive Types)和引用类型(Reference Types)

2、变量的作用域

  • 类变量(静态变量):作用域为整个类,可以在类的任何方法中访问。

  • 实例变量:作用域为类的实例(对象),可以在类的任何非静态方法以及类的构造器中访问。

  • 局部变量:作用域为方法或代码块,只能在声明它的方法或代码块中访问。

  • 参数变量:作用域为方法内部,用于传递数据给方法

类变量(静态变量):使用static声明的变量,可以直接使用 类名.变量名访问

  • 一个类不管创建了多少个对象,类只拥有类变量的一份拷贝,数值默认值是0,布尔型默认值是false,引用类型默认值是null

  • 生命周期:在第一次被访问时创建,在程序结束时销毁

  • 声明为public类型,一般这样声明 public static final

实例变量(属性):

  • 生命周期:在对象创建的时候创建,在对象被销毁的时候销毁

  • 访问修饰符可以修饰实例变量,一般是私有的,private修饰,然后通过方法来进行查看或者修改

局部变量:方法中的变量,声明在方法、构造方法、语句块、形式参数等

  • 生命周期:当它们执行完成后,变量将会被销毁

  • 访问修饰符不能用于局部变量

  • 局部变量没有初始值,必须初始化后才可以被使用

二、方法入参和返回类型

在Java编程中,方法是执行特定任务的可重用代码块,它可以接收数据作为输入(即入参)并返回数据作为输出(即返回值)。

方法入参:方法入参可以是Java中的任何数据类型,包括基本数据类型(如int、double、boolean等)和引用数据类型(如类、接口、数组等),需要明确指定每个入参的类型和名称。

方法返回类型:

  • 返回值是方法执行完毕后返回给调用者的数据。

  • 如果方法没有返回值或者不用返回,则其返回类型应为void。

  • 返回值的类型可以是Java中的任何数据类型,包括基本数据类型和引用数据类型。在定义方法时,需要明确指定返回值的类型。

  • return xxx 具体类型

三、多类型运算符

算术运算符, 用于执行基本的数学运算。

  • 加法运算符 (+): 用于将两个数相加。

  • 减法运算符 (-): 用于从一个数中减去另一个数。

  • 乘法运算符 (*): 用于将两个数相乘。

  • 除法运算符 (/): 用于将一个数除以另一个数。结果是一个浮点数,除非操作数都是整数且可以整除。

  • 取模运算符 (%): 也称为模数运算符,用于求余数。它返回两个数相除后的余数。

  • 自增运算符 (++): 将变量的值增加1。有两种形式:前置(如 ++x)和后置(如 x++),它们在表达式中的行为有所不同,++x是先加一再使用,x++是先使用再加一

  • 自减运算符 (--): 将变量的值减少1。同样,也有前置(如 --x)和后置(如 x--)两种形式

关系运算符(用于数值的比较,不能是字符串等其他非数值)

  • 等于运算符 (==): 判断两个值是否相等。

  • 不等于运算符 (!=): 判断两个值是否不相等。

  • 大于运算符 (>): 判断左边的值是否大于右边的值。

  • 小于运算符 (<): 判断左边的值是否小于右边的值。

  • 大于等于运算符 (>=): 判断左边的值是否大于或等于右边的值。

  • 小于等于运算符 (<=): 判断左边的值是否小于或等于右边的值。

注意:在Java中,==!= 运算符不仅可以用于基本数据类型的比较,还可以用于引用数据类型的比较,在这种情况下,它们比较的是引用是否指向同一个对象,即内存地址编号,而对于引用数据类型的内容比较,通常需要使用特定的方法或equals()方法。

逻辑运算符

  • 逻辑与 (&&:仅当两个操作数都为真,条件才为真。有短路作用,若第一个条件为false,则不会执行第二个条件的判断,因为无论第二个条件是什么,整个表达式的结果都将是false

  • 逻辑或(||):任何两个操作数任何一个为真,条件为真。有短路作用,若第一个条件为true,则不会执行第二个条件的判断,无论第二个条件是什么,整个表达式结果都是true

  • 逻辑非(!):反转操作数,如果条件为true,则逻辑非运算符将得到false

赋值运算符

  • 赋值运算符(=):用于给变量赋值

  • 复合赋值运算符(+=、-=、*=、/= 和 %=):允许在给变量赋值的同时进行算术运算

三目运算符(条件运算符)

  • 格式是 条件表达式 ? 成功值1 :否则值2

运算符优先级:

  • 乘除取余 * / %

  • 加减 + -

  • 关系运算>, >=, <,<=

  • 相等 ==、!=

  • 逻辑与 &&

  • 逻辑或 ||

  • 三目运算 ? :

  • 赋值 =

四、String字符串

String 类是 Java 中用于表示字符序列的类,属于引用数据类型,不是基本数据类型

String 类的创建:

(1)直接赋值:String str1 = "Hello, World!";

(2)使用 new 关键字创建:String str2 = new String("Hello, World!");

(3)字符串拼接创建:String str3 = "abc" + 1 + "999";

注意:任何数据类型和字符串拼接后都是字符串类型;

   null是空对象,不能调用任何方法;

          “ ”是字符串,只不过内容为空。

String 类的常用方法:

  • length():返回字符串的长度(字符个数)

  • charAt(int index):返回指定索引处的字符。

  • substring(int beginIndex, int endIndex):返回一个新的字符串,它是此字符串的一个子字符串。

  • concat(String str):将指定字符串连接到此字符串的结尾。

  • indexOf(int ch)indexOf(String str):返回指定字符或子字符串在此字符串中第一次出现处的索引。

  • lastIndexOf(int ch)lastIndexOf(String str):返回指定字符或子字符串在此字符串中最后一次出现处的索引。

  • startsWith(String prefix)endsWith(String suffix):测试此字符串是否以指定的前缀或后缀开始或结束。

  • replace(CharSequence target, CharSequence replacement):替换字符串中的字符或子字符串。

  • trim():返回字符串的副本,忽略前导空白和尾部空白。

  • toUpperCase()toLowerCase():将字符串中的所有字符转换为大写或小写。

  • split(String regex):根据给定的正则表达式的匹配拆分此字符串。

字符串比较:

equals()方法用于比较两个字符串的内容是否相同,==比较的是引用是否相同,而不是内容是否相同。

equals(Object anObject)equalsIgnoreCase(String another):比较两个字符串的内容是否相等,后者忽略大小写。

你可能感兴趣的:(JavaSE,java,开发语言)