Java入门基础学习笔记44——String

📅 2026/7/15 14:19:57
Java入门基础学习笔记44——String
为什么要学习String的处理呢开发中对字符串的处理是非常常见的。String是什么可以做什么java.lang.String 代表字符串。可以用来创建对象封装字符串数据并对其进行处理。1、创建对象2、封装字符串数据3、调用String的方法String创建对象封装字符串数据的方法方式一Java程序中的所有字符串文字例如“abc”都为此类对象。String name 小黑; String SchoolName 黑马程序员;方式二调用String类的构造器初始化字符串对象。new String()创建字符串对象并调用构造器初始化字符串。package cn.ensource.string; public class StringDemo { public static void main(String[] args) { String name itheima; System.out.println(name); String rs1 new String(); System.out.println(rs1); String rs2 new String(itheima); System.out.println(rs2); char[] chars {a, b, c}; String rs3 new String(chars); System.out.println(rs3); byte[] bytes {100, 101, 102}; String rs4 new String(bytes); System.out.println(rs4); } }运行结果通过构造函数创建通过new创建的字符串对象每一次new都会申请一个空间虽然内容相同但是地址值不同。直接赋值方式创建以“”双引号给出的字符串只要字符串序列相同顺序和大小相同无论程序代码中出现几次JVM都只会建立一个String对象并在字符串池中维护。String类的常用方法String提供的操作字符串数据的常用方法为什么是快速熟悉这些方法呢API是解决需求的快速地认识他们实实在在地解决业务需求。package cn.ensource.string; public class StringDemo2 { public static void main(String[] args) { // 目标快速熟悉String提供的处理字符串的方法 String s 黑马Java; // 获取字符串的长度 System.out.println(s.length()); // 提取字符串中某个索引位置处的字符 char c s.charAt(1); System.out.println(c); // 字符串的遍历 for (int i 0; i s.length(); i) { char ch s.charAt(i); System.out.print(ch); } System.out.println(--------); // 把字符串转成字符数组然后再进行遍历 char[] chars s.toCharArray(); for (int i 0; i chars.length; i) { System.out.print(chars[i]); } System.out.println(--------); // 判断字符串内容内容一样就返回true String s1 new String(黑马); String s2 new String(黑马); boolean rs s.equals(s2); System.out.println(rs); System.out.println(--------); // 忽略大小写比较字符串 String c1 34Aefg; String c2 24aefg; System.out.println(c1.equals(c2)); System.out.println(c1.equalsIgnoreCase(c2)); System.out.println(--------); // 截取字符串内容 String s3 Java是最好的编程语言之一; System.out.println(s3.substring(0, 8)); System.out.println(--------); // 截取字符串内容从当前位置到字符串末尾 System.out.println(s3.substring(8)); System.out.println(--------); // 把字符串的某个内容替换成新内容 String s3c s3.replace(Java, C); System.out.println(s3c); System.out.println(--------); // 判断字符串中是否包含某个关键字 String info Java是最好的编程语言之一; boolean rs5 info.contains(Java); System.out.println(rs5); // startwith System.out.println(--------); String info2 Java是最好的编程语言之一; boolean rs6 info2.startsWith(Java); System.out.println(rs6); System.out.println(--------); // 分割字符串 String str5 张无忌,周芷若,殷素素,赵敏; String[] names str5.split(,); for(int i 0; i names.length; i) { System.out.println(names[i]); } } }split这个成员方法之前在python中也遇到。如果方法不再记得了都是可以到API文档中查询的。另外比较基本数据类型比较具体的值。比较引用数据类型比较的是对象地址值。package com.company; public class Main { public static void main(String[] args) { char[] chs {a, b, c}; String s1 new String(chs); String s2 new String(chs); String s3 abc; String s4 abc; System.out.println(s1 s2); System.out.println(s1 s4); System.out.println(s3 s4); System.out.println(-------------); System.out.println(s1.equals(s2)); System.out.println(s1.equals(s3)); System.out.println(s3.equals(s4)); } }运行结果false false true ------------- true true true用户登录案例package org.chang; import java.util.Scanner; public class Test { public static void main(String[] args) { String username changchunhua; String password chang123; for (int i0; i3; i) { Scanner sc new Scanner(System.in); System.out.println(Please input username: ); String name sc.nextLine(); System.out.println(Please input password: ); String pwd sc.nextLine(); if (name.equals(username) pwd.equals(password)) { System.out.println(Sign in susccessfully!); break; } else { if (2 - i 0) { System.out.println(Your account is locked!); } else { System.out.println(Your has (2 - i) times to sign in.); } } } } }运行结果Please input username: chang Please input password: chang123 Your has 2 - i times to sign in. Please input username: changchun Please input password: chang123 Your has 2 - i times to sign in. Please input username: changchunhua Please input password: chang123 Sign in susccessfully!字符串反转package com.company; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc new Scanner(System.in); System.out.println(Please input a string: ); String line sc.nextLine(); String s reverse(line); System.out.println(s: s); } public static String reverse(String s) { String ss ; for(int is.length()-1; i0; i--) { ss s.charAt(i); } return ss; } }运行结果Please input a string: changchunhua s: auhnuhcgnahc