必做题:
============================================================
第一题:
定义一个字符串s = "Hello-World",利用API完成如下小需求
1.判断字符串s,与字符串"World"是否相等,并打印出来.
2.用程序得到字符串"Wo",在字符串s中的起始索引.
3.得到s中,3号索引对应的字符,打印到控制台上
4.得到s的长度,打印在控制台上.
5.获得s中的"Hell"字符串,打印在控制台上.
6.获得s中的"orld"字符串,打印在控制台上.
7.将字符串s中的所有o替换为*号.打印在控制台上
8.将字符串s切割成"Hello"和"World"两个字符串,打印在控制台上
9.将字符串s变为字符数组,遍历数组将每个字符打印在控制台上
package Day7;
public class Demo01 {
public static void main(String[] args) {
String s="Hello-World";
System.out.println("是否相等,-"+s.equals("World") );
System.out.println("Wo起始索引:"+s.indexOf("Wo"));
System.out.println("3号索引:"+s.charAt(3));
System.out.println("长度:"+s.length());
System.out.println("获得s中的Hell字符串"+s.valueOf("hell"));
System.out.println("获得s中的orld字符串"+s.valueOf("orld"));
System.out.println("将字符串s中的所有o替换为*号:"+s.replace("o","*"));
System.out.println("将字符串s切割成Hello和World两个字符串"+s.replace(s,"Hello"));
char[] chars=s.toCharArray();
for (char a:chars){
System.out.print(a+",");
}
}
}
第二题:
1.键盘录入一个字符串
2.统计录入的字符串中的大写字母,小写字母,数字分别有多少个.
package Day7;
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入字符串");
String str=sc.next();
strCount(str);
}
private static void strCount(String str) {
char[] chars=str.toCharArray();
int bigCount=0;
int littleCount=0;
int numCount=0;
for (int i = 0; i < chars.length; i++) {
if ('A'<=chars[i]&&chars[i]<='Z'){
bigCount++;
}else if ('a'<=chars[i]&&chars[i]<='a') {
littleCount++;
}else if ('0'<=chars[i]&&chars[i]<='9') {
numCount++;
}
}
System.out.println("大写字母的数量为:"+bigCount);
System.out.println("小写字母的数量为:"+littleCount);
System.out.println("数字数量:"+numCount);
}
}
第三题:
1.键盘录入5个字符串,组成一个数组
2.统计录入的字符串数组中的大写字母,小写字母,数字分别有多少个.
package Day7;
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
String str1="";
Scanner sc=new Scanner(System.in);
for (int i = 0; i <5 ; i++) {
System.out.println("请输入一个字符串");
String str2=sc.next();
str1=str1.concat(str2);
}
strCount(str1);
}
private static void strCount(String str1) {
char[] chars=str1.toCharArray();
int bigCount=0;
int littleCount=0;
int numCount=0;
for (int i = 0; i < chars.length; i++) {
if ('A'<=chars[i]&&chars[i]<='Z'){
bigCount++;
}else if ('a'<=chars[i]&&chars[i]<='a') {
littleCount++;
}else if ('0'<=chars[i]&&chars[i]<='9') {
numCount++;
}
}
System.out.println("大写字母的数量为:"+bigCount);
System.out.println("小写字母的数量为:"+littleCount);
System.out.println("数字数量:"+numCount);
}
}
第四题:
1.键盘录入一个字符串
2.将该字符串变成字符数组
3.将字符数组中的所有大写字母变成小写字母
4.如果第一位和最后一位的内容不相同,则交换
5.将字符数组中索引为偶数的元素变成'~'
6.打印数组元素的内容
------------------------------
【结果展示】
请输入字符串
abcDEf719
最终显示的效果
~b~d~f~1~
第五题:
1.键盘录入一个字符串
2.从字符串中随机获取3次字符,将获取的3个字符组成一个新的字符串.打印到控制台上
package Day7;
import java.util.Random;
import java.util.Scanner;
public class Demo05 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串");
String str=sc.next();
Random ra=new Random();
StringBuffer strb=new StringBuffer();
for (int i = 0; i <3 ; i++) {
int i1=ra.nextInt(str.length());
char c=str.charAt(i1);
strb.append(c);
}
System.out.println(strb);
}
}
第六题:
1.创建一个集合,往集合中键盘录入5个字符串
2.遍历集合,将集合中长度大于4的元素末尾加上一个X,
3.遍历集合,将集合打印在控制台上.
例:键盘录入后的集合{"123","ASDFQ","qq","poiuy","asd"}
打印到控制台上的集合{"123","ASDFQX","qq","poiuyX","asd"}
第七题:
分析以下需求,并用代码实现
1.定义如下方法public static String getPropertyGetMethodName(String property)
功能描述:
(1)该方法的参数为String类型,表示用户传入的参数,返回值类型为String类型,返回值为对应的get方法的名字
(2)如:用户调用此方法时传入参数为"name",该方法的返回值为"getName"
传入参数为"age",该方法的返回值为"getAge"
2.定义如下方法public static String getPropertySetMethodName(String property)
功能描述:
(1)该方法的参数为String类型,表示用户传入的参数,返回值类型为String类型,返回值为对应的set方法的名字
(2)如:用户调用此方法时传入参数为"name",该方法的返回值为"setName"
传入参数为"age",该方法的返回值为"setAge"
第八题:
完成下列题目要求:
①定义方法filter
要求如下:
参数:String [] arr,String str
返回值类型:String []
实现:遍历arr,将数组中包含参数str的元素存入另一个String 数组中并返回
PS:返回的数组长度需要用代码获取
②在main方法中完成以下要求:
定义一个String数组arr,数组元素有:"itcast","itheima","baitdu","weixin","zhifubao"
调用1中的filter方法传入arr数组和字符串”it”,输出返回的String数组中所有元素
示例如下:
输出的数组中的元素:
"itcast","itheima","baitdu"
第九题:
a.定义方法public static ArrayList<String> handleString(String [] arr,String str);
实现以下功能:
遍历arr,将数组中包含参数str的元素,含有str的部分替换为*, 存入另一个新String 集合中,将新集合返回;
b.在main方法中完成以下要求:
1)定义一个String数组arr,数组元素有:"beijing", "shanghai", "tianjin", "chongqing";
2)调用handleString方法传入arr数组和字符串”a”,输出返回的String集合中所有元素;
示例如下:
控制台输出元素如下:
[sh*ngh*i,ti*njin]
package Day02;
import java.util.ArrayList;
public class Demo01 {
public static void main(String[] args) {
String arr[]={"beijing", "shanghai", "tianjin", "chongqing"};
String str="i";
ArrayList<String> strings = handleString(arr, str);
for (int i = 0; i <strings.size() ; i++) {
System.out.println(strings.get(i));
}
}
public static ArrayList<String> handleString(String [] arr,String str){
ArrayList<String> str1=new ArrayList<String>();
for (int i = 0; i < arr.length; i++) {
if (arr[i].contains(str)){
String i1 = arr[i].replace("i", "*");
str1.add(i1);
}
}
return str1;
}
}
练习题:
========================================================
第十题:
1.定义一个工具类MathUtils,包含一个静态方法add,功能是:求两个数之和,并将其返回.
2.在测试类中的主方法中测试自己定义的工具类,能通过 类名.方法 调用add方法,计算两个数的和
package Day7;
public class Demo10 {
public static void main(String[] args) {
int a=5;
int b=6;
System.out.println(MathUtils.add(a,b));
}
static class MathUtils{
static int add(int a,int b){
return a+b;
}
}
}