String常见的构造方法和成员方法?

什么是String?

    String是一个引用数据类型
	是jdk给我们提供好的一个现成的String类
	"abc"既是一个字符串常量,也是一个字符串的对象(实例)

常见的构造方法?

	1.public String();初始化一个新创建的 String 对象,使其表示一个空字符序列
	2.public String(byte[] bytes);将字节数组转换成字符串
	3.public String(byte[] bytes,int offset,int length);将字节数组的一部分转换成字符串
	4.public String(char[] value);将字符数组转换成字符串
	5.public String(char[] value,int offset,int count);将字符数组的一部分转换成字符串
	6.public String(String original);初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列
	7.String s = "abc";

常见的问题?

	通过new出来的String对象和直接赋值的String对象有什么区别?
	通过new出来的,在内存中有2个对象
	通过直接赋值的对象,在内存只有1个对象
	String s1 = "abc";
	String s2 = "abc";
	String s3 = new String("abc");
	System.out.println(s1 == s2);//true
	System.out.println(s1 == s3);//false
	
	String s1 = "abc";
	String s2 = "ab";
	String s3 = s2 + "c";
	System.out.println(s1 == s3);//false
	
	String s1 = "abc";
	String s2 = "ab" + "c";
	System.out.println(s1 == s2);//true

常见的成员方法?

	1.public char charAt(int index);获取指定索引对应的字符
	2.public int compareTo(String anotherString);按字典顺序比较两个字符串。
		"abcde" -> {'a','b','c','d','e'}
		"bccde" -> {'b','c','c','d','e'}
		对位比较,如果对位相等,去下一位再继续比
	3.public String concat(String str);字符串的拼接
	4.public boolean contains(String s);判断是否包含指定的字符串
	5.public String toLowerCase();将大写字母转换成小写字母
	6.public String toUpperCase();将小写字母转换成大写字母
	7.public boolean equals(Object anObject);比较两个字符串的内容是否一致
		"abcde" -> {'a','b','c','d','e'} arr1[1]
		"abcde" -> {'a','d','c','d','e'} arr2[1]
	8.public boolean equalsIgnoreCase(String anotherString);比较两个字符串的内容是否一致(不区分大小写)
	9.public int indexOf(int ch);获取指定字符对应的索引值,如果找不到返回-1
	10.public int indexOf(String str);获取指定字符串对应的索引值,如果找不到返回-1
	11.public int lastIndexOf(int ch);获取指定字符对应的最后第一次出现的位置的索引,如果找不到返回-1
	12.public boolean isEmpty();判断字符串是否为空串
	13.public int length();获取字符串的长度
	14.public boolean startsWith(String prefix);判断是否以指定的字符串为前缀的,开头
	15.public boolean endsWith(String suffix);判断是否以指定的字符串为后缀的,结尾
	16.public String replace(char oldChar,char newChar);替换字符
	17.public byte[] getBytes():将字符串转换成字节数组
	18.public char[] toCharArray();将字符串转换成字符数组
	19.public String trim();去除字符串的前后空格
	20.public String substring(int beginIndex):截取,从指定的索引开始截取到末尾
	21.public String substring(int beginIndex,int endIndex);截取,从指定的beginIndex索引开始截取到endIndex(包头不包尾)
	22.public String[] split(String regex);按照指定的符号进行切割,根据给定正则表达式的匹配拆分此字符串。
		正则表达式:是一个字符串,在字符串里面写一些规则,可以帮助对指定的String数据进行校验
	23.public String replace(String target,String replacement);替换子字符串

练习:

	1.遍历字符串
		方法一:
			String s = "abcde";
			String[] strs = s.split("");
			for(int i = 0; i < strs.length; i++) 
				System.out.println(strs[i]);

		方法二:
			String s = "abcde";
			for(int i = 0; i < s.length(); i++) {
				char ch = s.charAt(i);
				System.out.println(ch);
			}
			
		方法三:
			String s = "abcde";
			char[] chs = s.toCharArray();
			for(int i = 0; i < chs.length; i++) 
				System.out.println(chs[i]);
				
	2.已知字符串String s = "adfasADFJASadfljdasjSFADASLJadfjaldj";将首字母变大写,其余都变小写?
		System.out.println(s.substring(0, 1).toUpperCase().concat(s.substring(1).toLowerCase()));
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
构造方法成员方法Java中有以下区别: 1. 方法名和类名相同:构造方法方法名必须与类名完全相同,而成员方法方法名可以任意取。 2. 返回值类型:构造方法没有返回值类型,而成员方法必须有返回值类型。 3. 调用方式:构造方法在创建对象时自动调用,而成员方法需要通过对象来调用。 4. 用途:构造方法用于初始化对象的状态,而成员方法用于执行对象的功能。 5. 参数:构造方法可以有参数,也可以没有参数,而成员方法可以有任意数量和类型的参数。 6. 调用顺序:构造方法在创建对象时被调用,而成员方法可以在对象创建后的任意时刻被调用。 7. 返回值:构造方法没有返回值,而成员方法可以有返回值。 8. 可见性:构造方法可以是public、protected、private或默认可见性,而成员方法可以有任意可见性。 9. 静态性:构造方法不能被声明为静态的,而成员方法可以是静态的或非静态的。 10. 继承:构造方法不能被继承,而成员方法可以被继承并重写。 11. 重载:构造方法可以重载,即可以有多个构造方法,而成员方法也可以重载。 以下是一个示例代码来演示构造方法成员方法的区别: ```java public class Animal { private String name; // 构造方法 public Animal(String name) { this.name = name; } // 成员方法 public void eat() { System.out.println(name + " is eating."); } public static void main(String[] args) { // 创建对象并调用构造方法 Animal animal = new Animal("Dog"); // 调用成员方法 animal.eat(); } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何呵呵是大佬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值