问题描述:
  从键盘数入若干文字,最后输入的一行"end"代表结束标记。
  1.   统计该段文字中英文字母的个数
  2.   将其中的所有单词the全部改为a,输出结果
  3.   将该段文字所有的数字串找出来输出

备注:

  •   编程语言:JAVA
  •   编译器:EverEdit
  •   编译环境:JDK1.8.0_191
  •   操作系统:windows 10
  
源代码:
//字符串的处理(String类,StringBuffer类)
 
/*测试数据:
1001 张三 the desk
李四 2019 04 03 the cup
22 48 王二 the 8356 thesleep
end
*/
 
import java.io.*;
 
class Main{
 public static void main(String args[]){
 
  //从键盘数入若干文字,最后输入的一行"end"代表结束标记
  String s="";
  String a[] = new String[100];//声明数组并规定空间
  int n=0;
  while(true){
   try{
    BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
    s=in.readLine();//读一行字符
    if(s.equals("end"))//equals()判断字符串是否相等:a,b必为字符串 ,a和b相等(a.equals(b))
     break;
   }catch(IOException e){ }
   
   a[n]=s;
   n++;
  }
 
  //统计该段文字中英文字母的个数
  int number=0;
  for(int i=0;i<n;i++){
   for(int k=0;k<a[i].length();k++){     //数组中用s.length,字符串中用s.length()
    char x = a[i].charAt(k);//返回指定位置的字符
    if((x >= 'a' && x <= 'z')||(x >= 'A' && x <= 'Z'))
     number++;
   }
  }
  System.out.println();
  System.out.println(number);
  System.out.println();
 
  //将其中的所有单词the全部改为a,输出结果
  for(int i=0;i<n;i++){
   s=a[i].replaceAll("the","a");//用a替换the
   System.out.println(s);
  }
 
  //将该段文字所有的数字串找出来输出
  StringBuffer stb = new StringBuffer();
  for(int i=0;i<n;i++){
   for(int k=0;k<a[i].length();k++){     //数组中用s.length,字符串中用s.length()
    char x = a[i].charAt(k);//返回指定位置的字符
    if(x >= '0' && x <= '9')
     stb.append(x);//将字符串(字符)添加到StringBuffer尾部
   }
  }
  System.out.println();
  System.out.println(stb);
  System.out.println();
 }
}
 
运行界面:

JAVA字符串的处理的更多相关文章

  1. Java 字符串格式化详解

    Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...

  2. (转)Java字符串

    转自:http://blog.sina.com.cn/s/blog_899678b90101brz0.html 创建字符串有两种方式:两种内存区域(字符串池,堆)1," " 引号创 ...

  3. Java字符串split函数的注意事项

    Java字符串的split方法可以分割字符串,但和其他语言不太一样,split方法的参数不是单个字符,而是正则表达式,如果输入了竖线(|)这样的字符作为分割字符串,会出现意想不到的结果, 如, Str ...

  4. 关于java字符串编译优化问题

    情景一:不好的字符串拼接习惯    起因是这样的:一个大牛在写了一篇关于java字符串优化问题的讲解,他提到:不要使用strObj+otherValue的方法将otherValue转换为字符串形式,因 ...

  5. Java字符串排列算法

    Java字符串排列算法 题目:现有ABCDE 5个球 构成的排列组合 可重复抽取 最多取到16个 共有多少种组合方式? 比如:取1个球可以构成的组合有 A B C D E 共5种,取2个球可以构成的组 ...

  6. Java字符串转换

    public class StringConvertToInt{ public static void main(String[] args) { String a ="12a34bW()5 ...

  7. Java字符串null相加

    Java字符串null相加 最近和同事讨论了下面的一段代码: String a = null; a += a; System.out.println(a); 运行结果: nullnull 本着学习的态 ...

  8. JAVA字符串格式化String.format()的使用

    JAVA字符串格式化-String.format()的使用常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprin ...

  9. Java字符串的10大热点问题,你都懂吗?

    转自 威哥干JAVA http://www.codingke.com 下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题,如果你也是Java初学者,仔细看看吧: 1.如何比较字符 ...

  10. java 字符串为空问题

    java 字符串为空问题 String testStr = null; System.out.println(testStr); if (testStr == null) { System.out.p ...

随机推荐

  1. Convert.ChangeType不能处理Nullable类型的解决办法(转)

    https://www.cnblogs.com/patrickyu/p/3211115.html 在做一个ORMapping功能的时候发现,Convert.ChangeType不能处理nullable ...

  2. 前端-JavaScript1-7——JavaScript之数学运算符

    ---恢复内容开始--- 运算符叫做operator,也可以叫做操作符.运算符有很多种,一元运算符.二元运算符:数学运算符.逻辑运算符……我们今天先学习数学运算符,比较简单 +     加法 -    ...

  3. 继承RelativeLayout 自定义布局

    public class HomeToolbarView extends RelativeLayout { TextView tvTitle; public HomeToolbarView(Conte ...

  4. Python【每日一问】10

    问:请解释一下迭代器 答:可以被 __next__() 函数调用并不断返回下一个值的对象称为迭代器:Iterator

  5. SSM框架-MyBatis框架数据库的增删查改操作

    话不多说,在User.xml文件中主要写一下操作数据库的sql语句,增,删,查,改是最常见的数据库操作 User.xml文件下:

  6. Java 工程师成神之路 | 2019正式版

    本文为转载,原文见以下链接:https://mp.weixin.qq.com/s/4AMzq87V6eW3YPgE0mCdSw 1 基础篇 01 面向对象 → 什么是面向对象 面向对象.面向过程 面向 ...

  7. Activation error occured while trying to get instance of type Database,key ""之Oracle

    我在发布web项目时好几次好遇到这个问题,查看了别人的说法,感觉还是不能解决,后来发现在发布时bin里面有dll没有打包到发布文件的bin目录中,而这些dll又是在连接Oracle(我选择的Oracl ...

  8. SSM框架指的是什么

    SSM(Spring+SpringMVC+MyBatis)框架集由Spring.SpringMVC.MyBatis三个开源框架整合而成, 常作为数据源较简单的web项目的框架. 其中spring是一个 ...

  9. 一个WPF只能输入数字的行为。

    没啥好说的,直接上代码: public class NumberInputBehaviour : Behavior<TextBox> { protected override void O ...

  10. Vue 编程式导航(通过js跳转页面)以及路由hash模式和history模式

    第一种方法: this.$router.push({path:'shopcontent?aid=3'}   第二种方法   this.$router.push({name:'news'}} 通过在ma ...