字符串

  1. //在Java中,String是一个引用类型,它本身也是一个class。但是,Java编译器对String有特殊处理,即可以直接用"..."来表示一个字符串:
  2. s = s.toUpperCase(); // 字符串变成大写
  3. s1 = equals(s2) // 字符串比较是否相等要用equals()
  4. s1 = equalsIgnoreCase(s2) // 比较相等且忽略大小写
  5. "Hello".contains("ll") // 判断是否包含子串
  6. "Hello".indexOf("l") // 返回查找到的索引值 2
  7. "Hello".lastIndexOf("l") // 返回查找到最后的索引值 3
  8. "Hello".startsWith("He"); // true
  9. "Hello".endsWith("lo"); // true
  10. "Hello".substring(2); // "llo"
  11. "Hello".substring(2, 4); "ll"
  12. // 去除首尾空白字符
  13. // 使用trim()方法可以移除字符串首尾空白字符。空白字符包括空格,\t,\r,\n:
  14. " \tHello\r\n ".trim(); // "Hello"
  15. // .strip()去除空格
  16. "\u3000Hello\u3000".strip(); // "Hello"
  17. " Hello ".stripLeading(); // "Hello " 去除左边空格
  18. " Hello ".stripTrailing(); // " Hello" 去除右边空格
  19. "".isEmpty(); // true,因为字符串长度为0
  20. " ".isEmpty(); // false,因为字符串长度不为0
  21. " \n".isBlank(); // true,因为只包含空白字符
  22. " Hello ".isBlank(); // false,因为包含非空白字符
  23. // 替换子符串
  24. String s = "hello";
  25. s.replace('l', 'w'); // "hewwo",所有字符'l'被替换为'w'
  26. s.replace("ll", "~~"); // "he~~o",所有子串"ll"被替换为"~~"
  27. // 分割字符串 .split()方法,传入的是正则表达式
  28. String s = "A,B,C,D";
  29. String[] ss = s.split("\\,"); // [A, B, C, D]
  30. // 拼接字符串
  31. String[] arr = {"A", "B", "C"};
  32. String s = String.join("***", arr); // "A***B***C"
  33. // 格式化字符串
  34. String s = "hi %s, your score is %d!";
  35. System.out.println(String.format(s,"shuai",100));
  36. %s : 显示字符串
  37. %d : 显示整数
  38. %x : 显示十六进制整数
  39. %f : 显示浮点数
  40. // 类型转换
  41. String.valueOf(123); // "123"
  42. String.valueOf(45.67); // "45.67"
  43. // 把字符串转换成int类型
  44. int n1 = Integer.parseInt("123");
  45. // 把字符串转换为boolean类型
  46. boolean b1 = Boolean.parseBoolean("true");
  47. // 转换为char[]
  48. char[] cs = "Hello".toCharArray(); // String -> char[]
  49. String s = new String(cs); // char[] -> String
  50. public class Target{
  51. public static void main(String[] args) {
  52. char[] cs = "Hello".toCharArray();
  53. // 创建新的String实例时,它并不会直接引用传入的char[]数组,而是会复制一份
  54. String s = new String(cs);
  55. System.out.println(s); // Hello
  56. cs[0] = 'x';
  57. System.out.println(s); // Hello
  58. }
  59. }
  60. public class Target{
  61. public static void main(String[] args) {
  62. int[] scores = new int[] {88,77,51,66};
  63. Score s = new Score(scores);
  64. s.printScores(); // [88, 77, 51, 66]
  65. scores[2]= 99;
  66. s.printScores(); // [88, 77, 99, 66]
  67. }
  68. }
  69. class Score{
  70. private int[] scores;
  71. public Score(int[] scores){
  72. this.scores = scores;
  73. }
  74. public void printScores(){
  75. System.out.println(Arrays.toString(scores));
  76. }
  77. }