1.編程. 已知字符串:"this is a test of java".
按要求執(zhí)行以下操作:
(1) 統(tǒng)計該字符串中字母s出現(xiàn)的次數(shù)
(2) 取出子字符串"test"
(3) 將本字符串復(fù)制到一個字符數(shù)組Char[] str中.
(4) 將字符串中每個單詞的第一個字母變成大寫满哪, 輸出到控制臺糕篇。
(5) 將本字符串轉(zhuǎn)換成一個字符串?dāng)?shù)組,要求每個數(shù)組元素都是一個有意義的額英文單詞,并輸出到控制臺
package demo1;
import java.util.Locale;
public class Test1 {
public static void main(String[] args) {
String string = "this is a test of java";
// (1) 統(tǒng)計該字符串中字母s出現(xiàn)的次數(shù)
int number =string.split("[s]").length>0? string.split("[s]").length-1:0;
System.out.println(number);
//取出子字符串"test"
System.out.println(string.substring(string.indexOf("test"), string.indexOf("test")+4));
// (3) 將本字符串復(fù)制到一個字符數(shù)組Char[] str中.
char[] str = string.toCharArray();
//(4) 將字符串中每個單詞的第一個字母變成大寫慈缔, 輸出到控制臺酌泰。
String[] str3 = string.split(" ");
for(int i = 0;i<str3.length;i++)
{
if(!Character.isUpperCase(str3[i].charAt(0)))
{
str3[i] = new StringBuilder().append(Character.toUpperCase(str3[i].charAt(0))).append(str3[i].substring(1)).toString();
}
System.out.print(str3[i]+" ");
}
System.out.println();
//(5) 將本字符串轉(zhuǎn)換成一個字符串?dāng)?shù)組顾腊,要求每個數(shù)組元素都是一個有意義的額英文單詞,并輸出到控制臺
String[] str2 = string.split(" ");
for(int i = 0;i<str2.length;i++)
{
System.out.println(str2[i]);
}
}
}
2.字符串解析状勤,現(xiàn)有一字符串,“卡巴斯基#殺毒軟件#免費版#俄羅斯#”畏铆,解析出每個元素雷袋。
package demo1;
public class Test2 {
public static void main(String[] args) {
String string = "卡巴斯基#殺毒軟件#免費版#俄羅斯#";
String[] str = string.split("[#]");
for (String string2 : str) {
System.out.println(string2);
}
}
}
4 .如下字符串:01#張三#2002#李四#1803#王五#2204#趙六#2005#田七#21分割出每個人的信息,樣式如下:
01 張三 20
02 李四 18
辞居。楷怒。。瓦灶。
創(chuàng)建Student類鸠删,屬性:學(xué)號 姓名 年齡
1將這些Student對象放進(jìn)數(shù)組中
2.查詢里面有沒有叫田七的學(xué)生如果存在則打印學(xué)生的具體信息(封裝成方法,鍵盤輸入姓名)
3.計算所有學(xué)生的平均年齡贼陶,最大年齡刃泡,最小年齡
4.如果存在名字叫張三的將名字改為張兵
package demo1;
import java.util.Scanner;
public class Test3 {
public static void main(String[] args) {
String str = "01#張三#20*02#李四#18*03#王五#22*04#趙六#20*05#田七#21";
String[] str2 = str.split("[*]");
//01#張三#20*02#李四#18*03#王五#22*04#趙六#20*05#田七#21分割出每個人的信息
student[] stu = new student[str2.length];
//1將這些Student對象放進(jìn)數(shù)組中
int i;
for(i = 0;i<str2.length;i++)
{
stu[i] =new student();
String[] str3 = str2[i].split("[#]");
stu[i].setTheClass(str3[0]);
stu[i].setName(str3[1]);
stu[i].setAge(Integer.parseInt(str3[2]));
}
//2.查詢里面有沒有叫田七的學(xué)生如果存在則打印學(xué)生的具體信息(封裝成方法,鍵盤輸入姓名)
Scanner input = new Scanner(System.in);
System.out.println("請輸入您要查詢的學(xué)生姓名");
String name = input.next();
PersonSearch(stu, name);
//3.計算所有學(xué)生的平均年齡碉怔,最大年齡烘贴,最小年齡
PersonSearch(stu);
for(i = 0;i<stu.length;i++)
{
if(stu[i].getName().equals("張三"))
{
stu[i].setName("張兵");
System.out.println(stu[i].getName());
break;
}
}
}
//查詢函數(shù)
public static void PersonSearch(student[] stu,String str)
{
boolean falg = true;
for(int i = 0;i<stu.length;i++)
{
if(stu[i].getName().equals(str))
{
falg = false;
System.out.println("班級:"+stu[i].getTheClass()+" 姓名:"+stu[i].getName()+" 年齡:"+stu[i].getAge());
}
}
if(falg)
{
System.out.println("該學(xué)生不存在");
}
}
public static void PersonSearch(student[] stu)
{
int minAge = stu[0].getAge();
int maxAge = stu[0].getAge();
int sumAge = stu[0].getAge();
for(int i = 1;i<stu.length;i++)
{
if(minAge>stu[i].getAge())
{
minAge = stu[i].getAge();
}
else
if(maxAge<stu[i].getAge())
{
maxAge = stu[i].getAge();
}
sumAge+=stu[i].getAge();
}
System.out.println("最大年齡為:"+maxAge+" 最小年齡為:"+minAge+" 平均年齡為"+(sumAge)/stu.length);
}
}
class student{
private String TheClass;
private int age;
private String name;
public student() {
}
public student(String theClass, int age, String name) {
super();
TheClass = theClass;
this.age = age;
this.name = name;
}
public String getTheClass() {
return TheClass;
}
public void setTheClass(String theClass) {
TheClass = theClass;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "student [TheClass=" + TheClass + ", age=" + age + ", name=" + name + "]";
}
}