第七章String类

一、填空题

1、 字符串常量属于String类的**匿名对象**,采用_直接赋值_实例化形式可以自动将实例化对象保存到对象池之中,供下个相同对象使用;
2、 如果要进行字符串内容比较则应该使用
**public boolean equals(String str)
__;
3、 当通过关键字new调用String类有参构造实例化时,可以使用public String intern();方法**让字符串保存到对象池之中;
4、 字符串变为字符数组的方法是:public char[] toCharArray()
5、 字符串拆分的方法是:
public String [] split(String regex)_
6、 可以实现字符串大小比较的方法是:public int compareTo(String str)_;

二、选择题

1、 下面那个操作可以在Java中实现字符串的拆分处理?( B )
(A)、slice() (B)、split() (C)、replace() (D)、charAt()
2、 下面那个方法不能够实现字符串的查找?( B )
(A)、contains() (B)、substring ()、indexOf() (D)、startsWith()
3、 下面那个方法不能够实现字符串比较操作?( D )
(A)、equals() (B)、compareTo() (D)、equalsIgnoreCase() (D)、trim()
4、 顺序执行下列程序语句后,则b的值是 C 。

String str = “Hello” ;
String b = str.substring(0,2) ;
A、 Hello B、 hello C、 He D、 null

三、判断题

1、 字符串使用关键字new通过构造方法实例化对象时,所产生字符串不会自动保存在对象池之中。 (√ )
2、 字符串对象如果直接赋值实例化,则所有采用同方式并且内容相同时会自动实现同一对象引用。 (× )
3、 使用substring()进行字符串截取的时候,索引下标可以设置为负数,表示由后向前截取。 (× )
4、 字符串在进行IP地址拆分时可以直接通过“.”拆分,即:“replaceAll(".")”。 (× )
5、 String类的trim()方法可以删除掉字符串中间的空格。 ( ×)

四、简答题

1、 请解释String类两种实例化方式的区别?
答: String类的对象有两种实例化方式:
|- 方式一:直接赋值,只开辟一块堆内存空间,并且对象可以入池;
|- 方式二:构造方法,开辟两块堆内存空间,有一块将称为垃圾,不会自动入池,使用intern()方法手工入池;

2、 请解释在字符串比较中“==”和“equals()”的区别?
答: String对象的比较方法:
|- ==:比较的是两个字符串对象的内存地址数值;
|- equals():字符串内容比较;

五、编程题

1、 从字符串“Java技术学习班20150628”中提取开班日期。

public class Practise01 {
        public static void main(String[] args) {
			String str="java技术学习开发班20150628";
			System.out.println(str.substring(str.indexOf("2")));
		}
}
20150628

2、 将“MLDN Java”字符串中的“Java”替换为“JavaEE”;

public class Practise02 {
        public static void main(String[] args) {
			String str="MLDN Java";
			String s=str.replaceAll("Java", "JavaEE");
			System.out.println(s);
		}
}
MLDN JavaEE

3、 取出“Java技术学习班20150628”中的第八个字符;

public class Practise03 {
       public static void main(String[] args) {
       String str=" Java技术学习班20150628";
       char a=str.charAt(8);
       System.out.println(a);
	}
}

4、 清除“Java技术学习班20150628”中所有的“0”;

public class Practise04b {
       public static void main(String[] args) {
    	   String str="Java技术学习班20150628";
    	   String sr=str.replaceAll("0", "");
    	   System.out.println(sr);
	}
}

Java技术学习班215628

5、 从任意给定的身份证号码中提取此人的出生日期;

public class Practise05 {
       public static void main(String[] args) {
		String str="612325199502048542";
		System.out.println(str.substring(6, 14));
	}
}
19950204

6、 编写程序在将字符串“want you to know one thing”,统计出字母“n”和字母“o”的出现次数。

public class Practise06 {
       public static void main(String[] args) {
		String str="want you to know one thing";
		String[] st=str.split("n");
		int a=0;
		for(int x=0;x<st.length;x++) {
			a++;
		}
		System.out.println(a-1);
	}
}
4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值