目录
注释
单行注释://
多行注释:/* */
文档注释:/** */
方法
概述
方法用于封装一段特定的逻辑功能。方法的主要要素有:权限修饰符 方法名、参数列表和返回值。
格式
权限修饰符 返回值类型声明 方法名称(参数列表){
方法中封装的逻辑功能;
return 返回值;
}
修饰符
Java可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:
- 访问控制修饰符 : default, public , protected, private
- 非访问控制修饰符 : final, abstract, static, synchronized
返回值详解
方法调用结束后可以返回一个数据,称之为返回值。 方法在声明时必须指定返回值的类型。 通过 return 语句返回,return 语句的作用在于结束方法且将数据返回。 如果方法没有返回值(即方法不需要返回数据),需将返回值类型声明为 void。
参数列表详解
方法的参数列表:在调用时传递给方法,需要被方法处理的数据。 在方法定义时,需要声明该方法所需要的参数变量。 在方法调用时,会将实际参数值传递给方法的参数变量。必须保证传递参数的类型和个数符合方法的声明。
方法示例
public void say(int a,int b){
System.out.println(“方法 say 正在执行”);
}
八大基本数据类型
由于变量记录的数据内容大小不同, 导致所需的存储单元大小不同,在 Java 语言中使用数据类型的概念加以描述 。
字节是计算机信息技术用于计量存储容量的一种计量单位,作为一个单位来处理的一个二进制数字串,是构成 信息的一个小单位。Java 中的字节是八位的字节,即它包含八位的二进制数。
数据类型所占的字节长度
类型声明
类型 变量名 = 值
切记float变量定义和long变量定义的时候,最后特地说明:即例如float f = 11.1123F;最后的数值后大小写都可以。
ascii码表
标识符
Java 对包、类、方法、参数和变量等要素命名时使用的字符序列称为标识符。
规则如下:
1.由字母、数字、下划线(_)和美元符号($)组成。
2. 不能以数字开头。
3.区分大小。
4. 长度无限制。
5. 不能是 Java 中的保留关键字。
关键字
命名规范
类名规范:首字母大写,后面每个单词首字母大写(大驼峰式)。
方法名规范: 首字母小写,后面每个单词首字母大写(小驼峰式)。
变量名规范:全部小写。
变量与常量
变量
变量就是系统为程序分配的一块内存单元,用来存储各种类型的数据。由于该存储单元中的数据可以发生改变,因此得名为"变量"。
变量的初始化: 变量类型 变量名 = 变量初始化值;
注意在java10中,对于局部的变量,如果可以从变量的初始化值推断出其数据类型,则声明的时候就不用特别书写数据类型了,直接用var代替
例如:var a =10;
按所属的数据类型划分
1.基本数据类型变量
2.引用数据类型变量
基本数据类型指的是简单的数据段
int a;
a = 10;//正确,因为a在声明时就分配了内存空间
引用数据类型指的是有多个值构成的对象
Date date;//执行实例化,开辟数据空间存放Date对象,然后把空间的首地址传给today变量
date=new Date();
//如果注释掉上一步操作,会出现如下错误
//The local variable date may not have been initialized
//也就是说对象的数据空间没有分配
date.getDate();
按被声明的位置划分
局部变量:方法或语句块内部定义的变量
成员变量:方法外部、类的内部定义的变量
特别注意:类的外面不能有变量的声明
常量
在java中用final关键字来描述常量
例如: final A = 12;
注意,常量名称用大写书写,且只能赋值一次,不能更改
枚举类型
有时候变量的取值在一个有限的集合内。针对这种情况,可以使用枚举类型来声明。
例如:
enum Size {SMALL, MEDIUM, LARGE, EXTRA_LARGE}
现在可以声明这种类型的变量
Size s = Size.MEDIUM;
有关枚举类型,请看后续介绍。
运算符
算术运算符
特例:
++: 如果是变量前缀:先对此变量加 1,再执行其他的操作。 如果是变量后缀:先执行当前语句的其他操作,再对此变量加 1
--: 如果是变量前缀:先对此变量减 1,再执行其他的操作。 如果是变量后缀:先执行当前语句的其他操作,再对此变量减 1。
数学函数与常量
可以使用Sqrt方法来计算平方根
double x = 4;
double y =Math.sqrt(x);
System.out.println(y);
其他的Math函数
//三角函数
Math.sin
Math.cos
Math.tan
Math.atan
Math.atan2
//一些反函数-自然对数以及以10为底的对数
Math.exp
Math.log
Math.log10
//Π和e的接近的近似值
Math.PI
Math.E
类型转换
boolean 类型不能转换成任何其它数据类型。
自动类型转换
容量小的类型自动转换成容量大的数据类型
byte,short,int -> float ->long ->double
而byte,short,int 不会互相转换,它们三者在计算时会转换成 int 类型。
强制类型转换
容量大的类型转换成容量小的数据类型时,要加上强制转换符
long l = 100L;
int i = (int)l;
有可能造成精度降低或数据溢出,使用时要小心。
Math.round方法可以做舍入运算
赋值运算符(含二元运算符)
赋值运算符作用是将一个值赋给一个变量,运算顺序从右到左。
关系和boolean运算符(含三元运算符)
关系运算符作用是比较两边的操作数,结果总是 boolean 型的
X ? Y : Z
X 为 boolean 类型表达式,先计算 x 的值,若为 true,整个三目运算的结果为表达式 y 的值,否则整个运算结果为表达式z的值
逻辑运算符
逻辑运算符用于对 boolean 型结果的表达式进行运算,运算结果总是 boolean 型
转义字符
操作符的优先级
运算符的优先次序 ,表达式的运算按照运算符的优先顺序从高到低进行,同级运算符从左到右进行。
字符串
子串
String类中的substring方法可以从一个较大的字符串中提取出一个字串。(可以用来计算字符串的长度)
String greeting = "Hello";
String s = greeting.substring(0,3);
System.out.println(s);//Hel
拼接
"+"除了可用于字符串相连接,也能将字符串与其它的数据类型相连成一个新的字符串。
不可变字符串
String类中没有提供修改字符串某个字符的方法。如果希望将greeting中内容修改为"help",
不能直接将greeting的最后两个位置的字符修改为"P"和"!",
可以先提取,再希望替换的字符拼接即可。
greeting = greeting.substring(0,3)+"p!"
检测字符串是否相等
比较两个字符串用==是判断两个字符串的位置是否相等,可以用区分大小写的equals和不区分大小写equalsIgnoreCase的方法
//判断s和t是否相等,返回值为布尔类型的
s.equals(t)
//判断是否相等而不考虑大小写
"Hello".equalsIgnoreCase("hello")
空串与NULL串
空串是指长度为0的字符串,可以调用以下代码查看是否为空。
if(str.length()==0)
//或
if(str.equals(""))
空串是java的一个对象,有自己的串长度(0)和自己的内容(空)。不过String变量还可以放另外一个特殊的值:NULL,表示目前没有任何对象与该变量关联。检查方法
if(str == null)
//有时要检查一个字符串既不是null也不是空串,可以使用
if(str != null && str.length() != 0)
码点和代码单元
相关内容请自行了解
联机阅读API
地址:http://docs.oracle.com/javase/9/docs/api
构建字符串
有时候,需要由较短的字符串构建字符串,如果用拼接的话就会比较麻烦,所以哟个StringBuilder可以完美的解决这一问题
package Last203;
public class Build_A_String {
public static void main(String[] args) {
//构建一个空的字符串构建器
StringBuilder builder = new StringBuilder();
//使用append方法进行添加内容
builder.append("char类型的"+'h'+"与 ");
builder.append("Srting类型的"+":hahha");
//完成时,用tostring方法调用,获得string对象
String completdeString = builder.toString();
//输出,看效果
System.out.println(completdeString);
}
}