(一)Java简介
1.Java特点
(1)完全面向对象(封装,继承,多态)
(2)通过虚拟机实现跨平台(Linux,Mac OS X,Windows)
(3)不需要进行内存管理
2.JDK,JRE,JVM
JDK包括JRE,JRE包括JVM。 当我们使用Java编译器编译Java程序时,生成.class为 .
后缀的字节码文件,这些字节码只面向虚拟机JVM而与任何平台无关。虽然每个平台的JVM 不相同,但是都提供了相同的接口,因此只要在不同的平台上配置了相应的虚拟机,编译后的字节码文件就可以在该平台上运行,如下所示:
(1)Java源文件—->编译器—->字节码文件
(2)字节码文件—->Jvm—->机器码
JVM学习
3.一个例子
public class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello World!");
print();
}
public static void print(){
System.out.println("out");
}
}
(1)static表示程序初始化的时候就已经加载了这个方法,不须再用对象去调用该方法,而是直接用类名去调用该方法;
(2)args表示字符串数组,存放命令行输入参数;
(3)main函数调用print函数
(二)Java语法
1.数据类型
(1)整数类型:byte(1个字节),short(2个字节),int(4个字节),
long(8个字节);
int:包括所有的正数,负数和0,数据范围为-2,147,483,648 and 2,147,483,647
(2)浮点数类型:float(4个字节),double(8个字节);
(3)字符类型:char(2个字节,unicode编码);
(4)布尔类型:boolean(true,false);
只有两个返回值true,false
(5)字符串类型:String;
2.注释
(1)单行注释
//I'm a single line comment!
(2)多行注释
/*
Hello,
Java!
*/
3.运算
(1)最基本的加减乘除:
int sum = 34 + 113;
int difference = 91 - 205;
int product = 2 * 8;
int quotient = 45 / 3;
(2)%:取余 ;/:取商
(3)关系运算符:<,<=,>,>=
返回值只有true或者false,只能比较同一种类型且有序的数据
(4)相等运算符:==,!=
可以比较任意类型的数据,boolean,char或者int
public class Generalizations {
public static void main(String[] args) {
boolean isComplete = true;//define a boolean variable
int awesomeLevel = 121;
int epicLevel = awesomeLevel *2;
System.out.println(epicLevel);
}
}
(三)小知识点总结
1.split里用到的正则表达式
\d表示 0-9 的数字,
\s表示 空格,回车,换行等空白符,
\w表示单词字符(数字字母下划线)
+号表示一个或多个的意思,所以...
2.一次性输出数组
Arrays.toString(a)
3.各种进制之间的转换
java进制转换
java中进行二进制,八进制,十六进制,十进制间进行相互转换
十进制转成十六进制:
Integer.toHexString(int i)
十进制转成八进制
Integer.toOctalString(int i)
十进制转成二进制
Integer.toBinaryString(int i)
十六进制转成十进制
Integer.valueOf("FFFF",16).toString()
八进制转成十进制
Integer.valueOf("876",8).toString()
二进制转十进制
Integer.valueOf("0101",2).toString()
4.对List排序
Collections.sort(S);
5.ArrayList的插入
add(位置,值);
6.控制格式输出
System.out.printf("%.2f", sum);
7.Java重写colletion的sort
Collections.sort(finalRes, new Comparator<String>() {
public int compare(String a, String b) {
for (int i = 0; i < a.length() && i < b.length(); ++i) {
if (a.charAt(i) < b.charAt(i)) {
return 1;
} else if (a.charAt(i) > b.charAt(i)) {
return -1;
}
}
if (a.length() > b.length()) {
return -1;
} else {
return 1;
}
}
});
8.重写Arrays.sort
public int getHeight(int[][] actors, int n) {
// write code here
if (null == actors || n == 0) {
return 0;
}
Arrays.sort(actors, new Comparator<int[]>() {
public int compare(int[] a, int[] b) {
if (a[0] > b[0]) {
return -1;
} else if (a[0] == b[0]) {
if (a[1] > b[1]) {
return -1;
} else {
return 1;
}
} else {
return 1;
}
}
});
}
(四)Git初谈
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>