package com.book.lite;import java.util.Locale;
import java.util.Scanner;/*1. 字符串的两种定义方式的区别:String a1 = ""; 只有一个对象:String a2 = new String(); 有两个对象2. String类的特点是什么底层代码的不变性,将字符串拆分成字符数组char[]3. 编写程序证明String类的不变性4. 编程题A. 自定义方法,实现两个字符串的比较,完全相等返回trueB. 将字符串中的字符进行大小写互转C. 判断一个字符串是否是回文。例如 abcba aba要求字符串长度必须是奇数,不能少于3个字符5. String类和StringBuffer的区别6. 自定义方法,实现字符串的反转*/
public class DayHomeWorkOf13 {public static void main(String[] args) {
//System.out.println(getString_6());}public static void getString_3() {String b1 = "hello ";String b2 = b1.toUpperCase(Locale.ROOT);System.out.println(b1 + "我没变");System.out.println(b2 + "我变大写");}public static boolean getString_4() {Scanner sc = new Scanner(System.in);System.out.print("请输入第一个字符串:");String sc1 = sc.nextLine();sc = new Scanner(System.in);System.out.print("请输入第二个字符串:");String sc2 = sc.nextLine();return sc1.equals(sc2);}//B. 将字符串中的字符进行大小写互转public static String getString_5() {Scanner sc = new Scanner(System.in);System.out.print("请输入要转换的字符串:");String sc1 = sc.nextLine();//判断字符串是否为空if (sc1.length()==0){return "请输入字符串";}else {//将字符串转为字符数组char [] ch = sc1.toCharArray();//遍历数组for(int x=0 ;x < ch.length; x++){//判断字符串的大小写[a-z 97-122] [A-Z 65-90]if(ch[x]>=97 && ch[x] <=122 ){ch[x] -= 32;}else if(ch[x]>=65 && ch[x]<=90){ch[x] += 32;}elsereturn "请输入正确数值";}return new String(ch);}}//C. 判断一个字符串是否是回文。例如 abcba abapublic static boolean getString_6(){Scanner sc = new Scanner(System.in);System.out.print("请输入要判断的字符串:");String sc1 = sc.nextLine();if (sc1.length()==0 )return false;else if (sc1.length() % 2 ==0 )return false;else {//将字符串转换为数组char[] ch = sc1.toCharArray();//获取数组中最远数组值for (int min = 0 , max = ch.length-1;min < max;max--,min++){if (ch[min]!=ch[max])return false;}return true;}}
}