javaSE各阶段练习题--面向对象-static-String-StringBuilder
生活随笔
收集整理的這篇文章主要介紹了
javaSE各阶段练习题--面向对象-static-String-StringBuilder
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
分析以下需求,并用代碼實(shí)現(xiàn):(1)定義數(shù)字字符串?dāng)?shù)組{"010","3223","666","7890987","123123"}(2)判斷該數(shù)字字符串?dāng)?shù)組中的數(shù)字字符串是否是對(duì)稱(第一個(gè)數(shù)字和最后一個(gè)數(shù)字相等,第二個(gè)數(shù)字和倒數(shù)第二個(gè)數(shù)字是相等的,依次類推)的,并逐個(gè)輸出(3)如:010 是對(duì)稱的,3223 是對(duì)稱的,123123 不是對(duì)稱的(4)最終打印該數(shù)組中對(duì)稱字符串的個(gè)數(shù)提示:循環(huán)獲取字符串的每一個(gè)字符,依次比較第一個(gè)和最后一個(gè),第二個(gè)和倒數(shù)第二個(gè)。。。
package com.henu.lmd;public class Test01 {public static void main(String[] args) {String[] str = {"010","3223","666","7890987","123123"};int pl = 1;int count = 0;for (int i = 0; i < str.length; i++) {for (int j = 0; j < str[i].length()/2; j++) {int sLen = str[i].length();if (str[i].charAt(j) == str[i].charAt(sLen-i-1)) {pl = 1;}else {pl = 0;}}if (pl == 1) {count++;System.out.println(str[i]+"是對(duì)稱的");}else {System.out.println(str[i]+"不是對(duì)稱的");}}System.out.println("對(duì)稱字符串的個(gè)數(shù)是:"+count);}}3.分析以下需求,并用代碼實(shí)現(xiàn):(1)從鍵盤循環(huán)錄入錄入一個(gè)字符串,輸入"end"表示結(jié)束(2)將字符串中大寫字母變成小寫字母,小寫字母變成大寫字母,其它字符用"*"代替,并統(tǒng)計(jì)字母的個(gè)數(shù)舉例:鍵盤錄入:Hello12345World輸出結(jié)果:hELLO*****wORLD總共10個(gè)字母
(1)
package com.henu.lmd;import java.util.Scanner;public class Test02_1 {public static void main(String[] args) {boolean flag= true;while(flag) {System.out.println("請(qǐng)輸入一個(gè)字符串:");Scanner sc = new Scanner(System.in);String str = sc.nextLine();if (str.equals("end")) {flag = false;System.out.println("終于結(jié)束了");}else {flag = true;System.out.println("我還沒結(jié)束,請(qǐng)繼續(xù)輸入!");}}}}
***************************************
(2)package com.henu.lmd;import java.util.Scanner;public class Test02_2 {public static void main(String[] args) {System.out.println("請(qǐng)輸入一個(gè)字符串:");Scanner sc = new Scanner(System.in);String str = sc.nextLine();String res = "";for (int i = 0; i < str.length(); i++) {char s = str.charAt(i);if (s >=65 && s <= 90) {s = (char) (s + 32);}else if (s >= 97 && s <= 122) {s = (char) (s - 32);}else if (s <= 57 && s >= 48) {s = (char)42;}else {s = s;}res = res + s;}System.out.println(res);}}4、鍵盤錄入一個(gè)字符串,統(tǒng)計(jì)該字符串中的大寫字母、小寫字母、數(shù)字字符和其他字符分別有多少個(gè)
例如,鍵盤錄入abcABCD12345!@#$%&,輸出結(jié)果為:小寫字母有3個(gè),大寫字母有4個(gè),數(shù)字字符有5個(gè),其他字符有6個(gè)。
package com.henu.lmd;import java.util.Scanner;public class Test04 {public static void main(String[] args) {System.out.println("請(qǐng)輸入一個(gè)字符串:");Scanner sc = new Scanner(System.in);String str = sc.nextLine();int lowercase = 0;int uppercase = 0;int number = 0;int elsesum = 0;for (int i = 0; i < str.length(); i++) {char cs = str.charAt(i);if (cs >= 48 && cs <= 57) {number++;}else if (cs >= 65 && cs <= 90) {uppercase++;}else if (cs >= 97 && cs <= 122) {lowercase++;}else {elsesum++;} }System.out.println("小寫字母有"+lowercase+"個(gè),大寫字母有"+uppercase+"個(gè),數(shù)字字符有"+number+"個(gè),其他字符有"+elsesum+"個(gè)。");}}5、定義一個(gè)方法,功能如下:給定一個(gè)數(shù)組,轉(zhuǎn)換成一個(gè)字符串
例如:數(shù)組為int[] arr = {1, 2, 3},字符串為[1, 2, 3]
package com.henu.lmd;import java.util.Arrays;public class Test05 {public static void main(String[] args) {int[] arr = {1,2,3};String str = "";for (int i = 0; i < arr.length; i++) {str = str + arr[i];//任何類型與字符串相加結(jié)果都是字符串}System.out.println(str);}}6、定義一個(gè)方法,功能如下:給定一個(gè)字符串,返回該字符串的反轉(zhuǎn)形式
例如:字符串為abcdef,返回結(jié)果為fedcba
package com.henu.lmd;public class Test06 {public static void main(String[] args) { String str = "abcdef";StringBuilder sBuilder = new StringBuilder(str);sBuilder.reverse();System.out.println(sBuilder.toString());//輸出結(jié)果:fedcba}
}
?
總結(jié)
以上是生活随笔為你收集整理的javaSE各阶段练习题--面向对象-static-String-StringBuilder的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: javaSE各阶段练习题---面向对象-
- 下一篇: javaSE各阶段练习题--面向对象-S