字符串小练习

小练习


  1. 判断某个人是不是姓张
  2. 打印字符串中的每一个字符
  3. 有如下信息,请计算并打印每个学生的平均分
//数据
String[] stus = {"小绿_数学_12_语文_33_英语_42,钢铁男_数学_26_语文_30_英语_40,小红_数学_62_语文_23_英语_42"
};

【1】判断某个人是不是姓张——name.startsWith()

package String;

import java.util.Scanner;

public class xiaoLianXi01 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入名字:");

        String name = sc.nextLine();
//        if(name.startsWith("张")){
//            System.out.println("Yes");
//        }else{
//            System.out.println("No");
//        }
        System.out.println(name.startsWith("张")?"yes":"no");  // 三目运算符
    }
}

【2】打印字符串中的每一个字符——charAt()

package String;

import java.util.Scanner;

public class xiaoLianXi02 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入字符串:");

        String s = sc.nextLine();
        for (int i = 0; i < s.length(); i++) {
            System.out.println(s.charAt(i));
        }
    }
}

【3】请计算并打印每个学生的平均分

  1. 字符串数组中 “ ”
  2. 每次都要有个新的字符串对象来接数组中的字符串
  3. 分割后得的是字符串数组,要计算平均值还要将成员转为数字形式——包装类
package String;

public class xiaolianxi03 {
    public static void main(String[] args) {

        String[] stus = {"小绿_数学_12_语文_33_英语_42","钢铁男_数学_26_语文_30_英语_40","小红_数学_62_语文_23_英语_42"
        };

        for (int i = 0; i < stus.length; i++) {
            String s = stus[i]; // 每次都要有一个新的对象来接字符串
          String ss[] = s.split("_");// 小绿,数学,12,语文,33,英语,42
            String name = ss[0];
            String mathScore = ss[2];
            String chineseScore = ss[4];
            String englisScore = ss[6];

            // 将字符串转为数字然后计算平均值——包装类
            double aver = (Integer.parseInt(mathScore) + Integer.parseInt(chineseScore) +Integer.parseInt(englisScore)) / 3.0;
            System.out.println(name+"的平均分为:"+aver);
        }

    }
}

posted @ 2021-08-12 17:56  时间最考验人  阅读(50)  评论(0编辑  收藏  举报