1.分析以下需求,并用代码实现:
(1)定义如下方法public static String getPropertyGetMethodName(String property); get属性的名称
(2)该方法的参数为String类型,表示用户给定的成员变量的名字,返回值类型为String类型,返回值为成员变量对应的get方法的名字
(3)如:用户调用此方法时给定的参数为"name",该方法的返回值为"getName"
public static String getPropertyGetMethodName(String property){
property=(property.charAt(0)+"").toUpperCase()+property.substring(1);
return "get"+property;
}
public static void main(String[] args) {
String name="name";
System.out.println(getPropertyGetMethodName(name));
}
2.分析以下需求,并用代码实现:
(1)定义数字字符串数组{“010”,“3223”,“666”,“7890987”,“123123”}
(2)判断该数字字符串数组中的数字字符串是否是对称(第一个数字和最后一个数字相等,第二个数字和倒数第二个数字是相等的,依次类推)的,并逐个输出
(3)如:010 是对称的,3223 是对称的,123123 不是对称的
(4)最终打印该数组中对称字符串的个数
public static void main(String[] args) {
String[] arr={"010","3223","666","7890987","123123"};
int num=0;
System.out.print("对称字符串有:"+"\t");
for (String s : arr) {
int tem=num;
for (int i=0;i<s.length()/2;i++){
if (s.charAt(i)!=(s.charAt(s.length()-1-i))){
num++;
break;
}
}
if (tem==num){
System.out.print(s+"\t");
}
}
System.out.println();
System.out.println("对称字符串个数为:"+(arr.length-num));
}
3.分析以下需求,并用代码实现:
(1)从键盘循环录入录入一个字符串,输入"end"表示结束
(2)将字符串中大写字母变成小写字母,小写字母变成大写字母,其它字符用"*"代替,并统计字母的个数
举例:
键盘录入:Hello12345World
输出结果:hELLO*****wORLD
总共10个字母
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("键盘录入:");
String str = s.next();
//字母个数
int num=0;
while (true){
if (str.equalsIgnoreCase("end")){
break;
}
System.out.println();
char[] chars = str.toCharArray();
String tem="";
for (char c : chars) {
if (c>='a' && c<='z'){
tem+=(c+"").toUpperCase();
num++;
}
if (c>='A' && c<='Z'){
tem+=(c+"").toLowerCase();
num++;
}
if (c>='0' && c<='9'){
tem+="*";
}
}
System.out.println("输出结果:"+tem);
System.out.println("字母个数:"+num);
break;
}
}
4、键盘录入一个字符串,统计该字符串中的大写字母、小写字母、数字字符和其他字符分别有多少个
例如,键盘录入abcABCD12345!@#$%&,输出结果为:小写字母有3个,大写字母有4个,数字字符有5个,其他字符有6个。
public static void main(String[] args) {
/*统计该字符串中的大写字母、小写字母、数字字符和其他字符分别有多少个*/
Scanner s = new Scanner(System.in);
String str = s.next();
char[] chars = str.toCharArray();
int numA=0,numa=0,num=0;
for (char c : chars) {
if (c>='a' && c<='z'){
numa++;
}
else if (c>='A' && c<='Z'){
numA++;
}
else if (c>='0' && c<='9'){
num++;
}
}
System.out.println("大写字母个数:"+numA);
System.out.println("小写字母个数:"+numa);
System.out.println("数字个数:"+num);
System.out.println("其他个数"+(chars.length-num-numA-numa));
}
5、定义一个方法,功能如下:给定一个数组,转换成一个字符串
例如:数组为int[] arr = {1, 2, 3},字符串为[1, 2, 3]
public static String arrToString(int [] arr){
String str="";
for (int i=0;i<arr.length;i++) {
if (i==arr.length-1){
str+=arr[i];
break;
}
str+=arr[i]+",";
}
return "["+str+"]";
}
public static void main(String[] args) {
String s = arrToString(new int[]{1, 2, 3});
System.out.println(s);
String s1 = arrToString(new int[]{8, 2, 3});
System.out.println(s1);
}
6、定义一个方法,功能如下:给定一个字符串,返回该字符串的反转形式
例如:字符串为abcdef,返回结果为fedcba
public static String reverse(String str){
char[] chars = str.toCharArray();
for (int i = 0; i <chars.length/2 ; i++) {
char tem=chars[i];
chars[i]=chars[chars.length-i-1];
chars[chars.length-i-1]=tem;
}
return String.valueOf(chars);
}
public static void main(String[] args) {
String s = reverse("abcdef");
System.out.println(s);
}