Java : String作业

简介: Java : String作业

以下题目都用方法实现,再在主方法中进行测试

1、给定一个数组nums = {‘A’,‘B’, ‘C’},要求以[A,B,C]的值输出

import java.util.Arrays;
public class Diyi {
  public static void main(String[] args) {
    xiazhi121();
  }
  public static void xiazhi121() {
    char[] nums = { 'A', 'B', 'C' };
    char[] array= nums;
    String sum = Arrays.toString(array);//转换成String类型
    System.out.println(sum);
  }
}

2、将一字符串反转后,再输出。如“ase234”->“432esa”

import java.util.Scanner;
public class Dier {
  public static void main(String[] args) {
        xiazhi121();
  }
  public static void xiazhi121() {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入需要反转的字符串:");
        String line = sc.nextLine();
    StringBuffer fanzhuang = new StringBuffer(line);
        fanzhuang = fanzhuang.reverse();//字符串反序输出
        System.out.println("反转之后的字符串为:" +"\n" + fanzhuang);
  }
}

3、统计一个字符串在另一个字符串中出现的次数

public class Disan {
  public static void main(String[] args) {
    xiazhi121();
  }
    public static void xiazhi121(){
      String s = "ddffffbbbdddbbbfdsa";
      System.out.println("第一个字符串为:"+s);
      String s2="bbb";
      System.out.println("第二个字符串为:"+s2);
        String s1 = s.replace("bbb", "");
        int count = (s.length() -s1.length())/s2.length();//统计次数
        System.out.println("第二个字符串在第一个字符串出现的次数:"+count+"次");
    }
}

4、编写一方法deleteCharAt(),功能为删除字符串的一个字符

public class Dishi {
  public static void main(String args[]) {
    deldteCharAt();
  }
  public static void deldteCharAt() {
    String str = "abcdDaCBA123";
    System.out.println("删除前的字符串为:" + str);
    String strNew = str.replace("a", "");//删除字符
    System.out.println("删除a字符之后:" + strNew);
  }
}

5、输入一网站名,然后按小数点进行分割输出。如www.baidu.com输出为www    baidu    com

import java.util.Scanner;
public class Diwu {
  public static void main(String[] args) {
    xiazhi121();
  }
  public static void xiazhi121() {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入一个网站名:");
    String line = sc.nextLine();
    String[] firstArray = line.split("\\.");//按照“.”分割
    for (String a : firstArray) {
      System.out.print(a + "    ");//按要求输出
    }
  }
}

6、将一字符串中的所有空格去掉再输出

public class Diliu {
  public static void main(String[] args) {
    xiazhi121();
  }
  public static void xiazhi121() {
    String str = "      abc    ";
    System.out.println("去除空格前:" + str);
    String quchu = str.trim();//忽略字符串首尾处空白
    System.out.println("去除空格后:" + quchu);
  }
}

7、输入一人的身份证号,判断其合法性,再输出该人的所在省名,出生年月日,性别信息

import java.util.Scanner;
public class Diqi {
  public static void main(String[] args) {
    xiazhi121();
  }
  public static void xiazhi121() {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入一个身份证号:");
    String s = sc.nextLine();
    int i = 18;
    if (i != s.length()) {
      System.out.println("输入身份证号码有误");//多活动少提示输入错误
    } else {
      String year = s.substring(6, 10);//取身份证的年份
      String month = s.substring(10, 12);//取身份证的月份
      String day = s.substring(12, 14);//取身份证的天
      System.out.println("出生年月日为:" + year + "年" + month + "月" + day + "日");
      String sex = s.substring(16, 17);//取身份证代表性别的位数
      int a = Integer.valueOf(sex);
      if (a % 2 == 0) {
        System.out.println("此身份证号码的人是女性");
      } else {
        System.out.println("此身份证号码的人是男性");
      }
      String[] sun = { "11", "12", "13", "14", "15", "21", "22", "23", "31", "32", "33", "34", "35", "36", "37",
          "41", "42", "43", "44", "45", "46", "50", "51", "52", "53", "54", "61", "62", "63", "64", "65",
          "71", "81", "82" };//身份证对应的身份证第一位和第二位
      String[] sum = { "北京市", "天津市", "河北省", "山西省", "内蒙古自治区", "辽宁省", "吉林省", "黑龙江省", "上海市", " 江苏省", "浙江省", "安徽省",
          "福建省", "江西省", "山东省", " 河南省", "湖北省", " 湖南省", "广东省", " 广西壮族自治区", "海南省", "重庆市", "四川省", "贵州省", "云南省",
          " 西藏自治区", "陕西省", "甘肃省", "青海省", "宁夏回族自治区", "新疆维吾尔自治区", "台湾省", "香港特别行政区", "澳门特别行政区" };
      String pos = (s.substring(0, 2));//取出身份证一二位
      int sheng;
      for ( sheng = 0; sheng < sun.length; sheng++) {
        if (pos.equals(sun[sheng])) {
          break;//找到对应的省份退出循环
        }
      }
      System.out.println("此身份证的省份为:" + sum[sheng]);
    }
  }
}

8、输入一字符串,分别统计出其中英文字母、空格、数字和其它字符的个数

import java.util.Scanner;
public class Diba {
    public static void main(String[] args) {
        xiazhi121();
    }
    public static void xiazhi121() {
        System.out.print("请输入一串字符:");
        Scanner scan = new Scanner(System.in);
        String str = scan.nextLine();//将一行字符转化为字符串
        char[] b = str.toCharArray();//将字符串转换为字符数组
        int letters = 0;
        int num = 0;
        int blank = 0;
        int others = 0;
        int i = 0;
        while (i < b.length) {
            if ((b[i] >= 'A') && (b[i]) <= 'Z') {
                letters++;//计算英文字符个数
            } else if ((b[i] >= 'a') && (b[i]) <= 'z') {
                letters++;//计算英文字符个数
            } else if ((b[i] >= '0') && (b[i]) <= '9') {
                num++;//计算数字个数
            } else if (b[i] == ' ') {
                blank++;//计算空格个数
            } else {
                others++;//计算其他字符个数
            }
            i++;
        }
        System.out.println("英文字符共有:" + letters + "个");
        System.out.println("数字字符共有:" + num + "个");
        System.out.println("空格字符共有:" + blank + "个");
        System.out.println("其它字符共有:" + others + "个");
    }
}
目录
相关文章
|
3月前
|
Java Apache Maven
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
66 6
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
|
4月前
|
Java 索引
java基础(13)String类
本文介绍了Java中String类的多种操作方法,包括字符串拼接、获取长度、去除空格、替换、截取、分割、比较和查找字符等。
49 0
java基础(13)String类
|
23天前
|
存储 JavaScript Java
Java 中的 String Pool 简介
本文介绍了 Java 中 String 对象及其存储机制 String Pool 的基本概念,包括字符串引用、构造方法中的内存分配、字符串文字与对象的区别、手工引用、垃圾清理、性能优化,以及 Java 9 中的压缩字符串特性。文章详细解析了 String 对象的初始化、内存使用及优化方法,帮助开发者更好地理解和使用 Java 中的字符串。
Java 中的 String Pool 简介
|
29天前
|
缓存 安全 Java
java 为什么 String 在 java 中是不可变的?
本文探讨了Java中String为何设计为不可变类型,从字符串池的高效利用、哈希码缓存、支持其他对象的安全使用、增强安全性以及线程安全等方面阐述了不可变性的优势。文中还通过具体代码示例解释了这些优点的实际应用。
java 为什么 String 在 java 中是不可变的?
|
3月前
|
Java 测试技术 开发者
Java零基础-indexOf(String str)详解!
【10月更文挑战第14天】Java零基础教学篇,手把手实践教学!
127 65
|
2月前
|
JSON Java 关系型数据库
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
在Java中,使用mybatis-plus更新实体类对象到mysql,其中一个字段对应数据库中json数据类型,更新时报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
103 4
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
|
5月前
|
Kubernetes jenkins 持续交付
从代码到k8s部署应有尽有系列-java源码之String详解
本文详细介绍了一个基于 `gitlab + jenkins + harbor + k8s` 的自动化部署环境搭建流程。其中,`gitlab` 用于代码托管和 CI,`jenkins` 负责 CD 发布,`harbor` 作为镜像仓库,而 `k8s` 则用于运行服务。文章具体介绍了每项工具的部署步骤,并提供了详细的配置信息和示例代码。此外,还特别指出中间件(如 MySQL、Redis 等)应部署在 K8s 之外,以确保服务稳定性和独立性。通过本文,读者可以学习如何在本地环境中搭建一套完整的自动化部署系统。
77 0
|
23天前
|
存储 Java
Java 11 的String是如何优化存储的?
本文介绍了Java中字符串存储优化的原理和实现。通过判断字符串是否全为拉丁字符,使用`byte`代替`char`存储,以节省空间。具体实现涉及`compress`和`toBytes`方法,前者用于尝试压缩字符串,后者则按常规方式存储。代码示例展示了如何根据配置决定使用哪种存储方式。
|
2月前
|
Java
在Java中如何将基本数据类型转换为String
在Java中,可使用多种方法将基本数据类型(如int、char等)转换为String:1. 使用String.valueOf()方法;2. 利用+运算符与空字符串连接;3. 对于数字类型,也可使用Integer.toString()等特定类型的方法。这些方法简单高效,适用于不同场景。
63 7
|
3月前
|
Java 测试技术 开发者
Java零基础-indexOf(String str)详解!
【10月更文挑战第13天】Java零基础教学篇,手把手实践教学!
64 1