48 主方法组成分析
public static void main(String[] args) { }
主方法是一切的开始点
public 权限公开
static 由类直接调用
void 无返回
main 固定方法名
String[] args 接收启动参数;参数本身有空格,需要用双引号
class Demo{ public static void main(String[] args) { for(String arg : args){ System.out.println(arg) ; } } }
第11 章 : String类常用方法
49 JavaDoc文档简介
Java JDK 1.9之前 加载JVM就加载常用类库
Java JDK 1.9 模块化
文档结构:
完整定义
相关说明
成员属性摘要
构造方法摘要 Deprecated 表示不建议使用
方法摘要
方法和成员的详细解释
https://docs.oracle.com/javase/8/docs/api/
50 字符串与字符数组
JDK 1.9以前,使用字符数组包装实现字符串
构造方法
String(char[] value)
String(char[] value, int offset, int count)
普通方法
char charAt(int index) 获取指定索引字符,下标从0开始
char[] toCharArray() 字符串转字符数组
实例代码:
1、将小写字符转为大写
String str = "helloworld"; char[] str_list = str.toCharArray(); for (int i=0; i < str_list.length; i++){ str_list[i] -= 32 ; // a 97 -> A 65 相差32 } System.out.println(new String(str_list)); // HELLOWORLD System.out.println(new String(str_list, 0, 5)); // HELLO
2、判断字符串中所有字符是否都由数字组成
class Demo{ public static void main(String[] args) { System.out.println(isNumber("hello")); // false System.out.println(isNumber("123")); // true } public static boolean isNumber(String str){ char[] charList = str.toCharArray(); for (char c: charList){ if(c < '0' || c > '9'){ return false; } } return true; } }
中文处理使用char字符
51 字符串与字节数组
构造方法
String(byte[] bytes)
String(byte[] bytes, inf offset, int length)
普通方法
byte[] getBytes() 字符串转字节数组
byte[] getBytes(String charsetName) 编码转换
字节有长度限制 -128 ~ 127
实例:
通过字节数组将字符串字符小写转大写
String str = "helloworld"; byte[] byte_list = str.getBytes(); for (int i=0; i < byte_list.length; i++){ byte_list[i] -= 32 ; // a 97 -> A 65 相差32 } System.out.println(new String(byte_list)); // HELLOWORLD System.out.println(new String(byte_list, 0, 5)); // HELLO
52 字符串比较
boolean equals(String str) 区分大小写相等判断
boolean equalsIgnoreCase(String str) 不区分大小写相等判断
// 区分大小写 "HELLO".equals("hello"); // false // 不区分大小写 "HELLO".equalsIgnoreCase("hello"); // true
int compareTo(String str) 进行字符串大小比较
int compareToIgnoreCase(String str) 不区分大小写进行字符串大小比较
大于>0 等于=0 小于<0
"HELLO".compareTo("hello"); // -32 "HELLO".compareToIgnoreCase("hello"); // 0