来源:菜鸟教程
Java基础
Java 基本语法
标识符
类名、方法名、变量名都成为标识符。
- A-Z, a-z, $, _ 四种开始
- 首字符之后,A-Z, a-z, $, _, 数字任意组合
- 关键字不能用作标识符
- 大小写敏感
修饰符
使用修饰符赖修饰类中的方法和属性。
- 访问控制修饰符。default, public, protected, private
- 非访问控制修饰符。final, abstract, static, synchronized
变量
- 局部变量
- 类变量(静态变量)
- 成员变量(非静态变量)
关键字
类别 | 关键字 | 说明 |
---|---|---|
访问控制 | private | 私有的 |
& | protected | 受保护的 |
& | private | 公开的 |
& | default | 默认 |
类、方法、变量修饰符 | abstract | 声明抽象 |
& | class | 类 |
& | extends | 扩充、继承 |
& | final | 最终值,不可改变的 |
& | implements | 实现(接口) |
& | interface | 接口 |
& | native | 本地,原生方法 |
& | new | 新,创建 |
& | static | 静态 |
& | strictfp | 严格,精准 |
& | synchronized | 线程同步 |
& | transient | 短暂 |
& | volatile | 易失 |
程序控制语句 | break | 跳出循环 |
& | case | 供switch选择 |
& | continue | 继续 |
& | default | 默认 |
& | do | 运行 |
& | else | 否则 |
& | for | 循环 |
& | if | 如果 |
& | instanceof | 实例 |
& | return | 返回 |
& | switch | 根据值选择执行 |
& | while | 循环 |
错误处理 | assert | 断言表达式是否为真 |
& | catch | 捕捉异常 |
& | finally | 有没有异常都执行 |
& | throw | 抛出一个异常对象 |
& | throws | 声明一个异常可能被抛出 |
& | try | 捕获异常 |
包 | import | 引入 |
& | package | 包 |
基本类型 | boolean | 布尔型 |
& | byte | 字节型 |
& | char | 字符型 |
& | double | 双精度浮点 |
& | float | 单精度浮点 |
& | int | 整型 |
& | long | 长整型 |
& | short | 短整型 |
变量引用 | super | 父类、超类 |
& | this | 本类 |
& | void | 无返回值 |
保留关键字 | goto | 是关键字,但不可用 |
& | const | 是关键字,但不可用 |
& | null | 空 |
Java源程序
Java字符串
String
String str = "my name is jjxz";
//返回给定的位置的代码单元
char carAt4 = str.charAt(4);
System.out.println("carAt4 = " + carAt4);
//返回给定位置开始的码点
int code = str.codePointAt(4);
System.out.println("code = " + code);
//返回从index代码点开始,位移codePointOffset后的代码索引
int acout = str.offsetByCodePoints(0, 4);
System.out.println("acout = " + acout);
//按照字典顺序,如果字符串位于other之前,返回一个负数;
//如果字符串位于other之后,返回一个正数;
//如果两个字符串相等, 返回0;
int cmp = str.compareTo("my name is jjx");
System.out.println("cmp = " + cmp);
//将这个字符串的码点作为一个流返回。调用toArray将它们放在一个数组中
IntStream codePoints = str.codePoints();
System.out.println("codePoints = " + codePoints);
System.out.println("codePoints = " + codePoints.toArray());
/*
int [] a = codePoints.toArray();
//从offset开始的count个码元构造一个字符串
String newStr = new String(a, 0, 5);
System.out.println("newStr = " + newStr);
*/
// 如果字符串与other相等,返回true
boolean isTrue = str.equals("my name is jjxz");
System.out.println("isTure = " + isTrue);
//如果字符串和other(不区分大小写)相等,返回true
boolean isTrueAgain = str.equalsIgnoreCase("My name is jjxz");
System.out.println("isTrueAgain = " + isTrueAgain);
//如果字符串以prefix开头则返回true
//如果字符串以endfix结束则返回true
System.out.println(str.startsWith("my "));
System.out.println(str.endsWith("jjxz"));
//返回与字符串str或代码点cp匹配的第一个字串的开始位置。如果不存在str,返回-1
System.out.println(str.indexOf("j"));
//返回最后一个子串的开始位置
System.out.println(str.lastIndexOf("j"));
//返回字符串长度
System.out.println(str.length());
//返回startIndex 和 endIndex-1 之间的代码点数量
System.out.println(str.codePointCount(0, 13));
//返回一个新字符串,这个字符用newString代替原始字符串中所有的oldString
System.out.println(str.replace("jjxz", "jjxnb"));
//返回一个新字符串, 包含原始字符串中从beginIndex到串尾或endIndex-1的所有代码单元
System.out.println(str.substring(5, 10));
//返回一个新字符串,将原始字符串中的小写变成大写,大写字母变成小写
System.out.println(str.toUpperCase());
System.out.println("U are BBRINGGR".toLowerCase());
//返回一个新字符串,这个字符删除原始字符串头部和尾部的空格
System.out.println(" we are in the songs ");
System.out.println(" we are in the songs ".trim());
//返回一个新字符串,用给定的定界符连接所有元素
List<String> names = new ArrayList<String>();
names.add("1");
names.add("2");
names.add("3");
System.out.println("the string join is as " + String.join("->", names));
StringBuilder
//有时只需要较短的字符串来构建字符串,这时候用String 就比较费事,用StringBuilder比较好
//StringBuilder
//构造一个空的字符串构造器
StringBuilder stringBuilder = new StringBuilder();
//追加一个代码单元并返回this
stringBuilder.append('c');
//追加一个字符串并返回this
System.out.println("stringBuilder = " + stringBuilder);
stringBuilder.append(str);
System.out.println("stringBuilder = " + stringBuilder);
String completedString = stringBuilder.toString();
System.out.println("completedString = " + completedString);
//返回构造器中的代码单元数量
int stringBuilderLength = stringBuilder.length();
System.out.println("stringBuilderLength = " + stringBuilderLength);
//把第index个代码单元设置成ch
stringBuilder.setCharAt(3, '.');
System.out.println("new stringBuilder is " + stringBuilder);
//在offset位置插入一个字符串并返回this
System.out.println(stringBuilder.insert(1, "hahaha"));
//删除偏移量从startIndex到endIndex-1的代码单元并返回this
System.out.println(stringBuilder.delete(3, 4));