Core Java
一、数据类型
16进制前缀:0x
2进制前缀:0b
浮点类型:float、double用于表示有小数部分的数值
char类型:用单引号扩起来。
boolean:false和true,用来判定逻辑条件。
二、变量和常量
final表示常量,表示只能被赋值一次,赋值后就不能更改,常量名习惯用大写。
public static void main(String[] args) {
final double PI = 3.14; // 常量,不需要变化的,例如π、半径
final double RADIUS_OF_CIRCLE = 2; // 圆的半径
double areaOfCircle; // 圆的面积
areaOfCircle = RADIUS_OF_CIRCLE * PI; // 圆的面积=半径*π
System.out.println("圆的面积:" + areaOfCircle);
}
如果希望常量在一个类中被多个方法调用,
public class Constant {
private static final double PI = 3.14; // 表示这个常量会在当前类被调用多次
public static void main(String[] args) {
final double RADIUS_OF_PRICE = 3;
double areaOfCircle = RADIUS_OF_PRICE * PI;
System.out.println("圆的面积:" + areaOfCircle);
}
}
三、数学函数与常量
数值的平方根:
double x = 4.0;
System.out.println(Math.sqrt(x)); // x的平方根
幂运算:
double x = 4.0;
double y = 2.0;
System.out.println(Math.pow(x, y)); // x的y次幂次
整数余数:
double x = 4.0;
double y = 2.0;
System.out.println(Math.floorMod((int) (x + y), 12)); // 解决一个长期存在的有关整数余数的问题
π和e常量的近视值:
π:Math.PI
e:Math.E
StrictMath:
如果得到一个完全可预测的结果比运行速度更重要的话, 那么就应该使用StrictMath类
System.out.println(StrictMath.cos(StrictMath.PI * 60.0 / 180.0));
三元操作符:
表达式
condition ? expression1 : expression 2
double x = 4.0;
double y = 2.0;
System.out.println(x < y ? x : y);
运算符级别
a && b || c等价于( a && b ) || c
因为 + = 是右结合运算符:a+=b+=c等价于a+=(b+=c)
四、字符串
每个用双引号括起来的字符串都是String 类的一个实例
// 字符串
String d = "abcdef";
子串:
String 类的 substring 方法可以从一个较大的字符串提取出一个子串;还可以计算出子串的长度。
String d = "abcdef";
System.out.println(d.substring(0,3));
拼接:
使用+号拼接两个字符串。
String d = "abcdef"+"gh";
System.out.println(d);
字符串和非字符串拼接:
String g = "abc";
Integer h = 10;
System.out.println(g + h);
多个字符串放在一起:使用join方法
字符串是否相等:
equals:检查两个字符串是否相等。
==:只能确定两个字符串是否放在同一个位置。
检查一个字符串不为null也不为空串
if (d != null && d.length() != 0) {}
输入和输出
如果文件名中包含反斜杠符号,要在每一个反斜杠前面多加一个反斜杠。
输入:
Scanner sc = new Scanner(Paths.get("C:\\Users\\sywangu\\Desktop\\myfile.txt"), "UTF-8");
输出:
PrintWriter out = new PrintWriter("C:\\Users\\sywangu\\Desktop\\myFile22.txt");