2019-01-28从键盘循环录入录入一个字符串,输入"end"表示结束

package homework;

import java.util.Scanner;

/*(1)从键盘循环录入录入一个字符串,输入"end"表示结束

(2)将字符串中大写字母变成小写字母,小写字母变成大写字母,其它字符用"*"代替,并统计字母的个数

举例:

键盘录入:Hello12345World

输出结果:hELLO*****wORLD

  总共10个字母*/

public class Work3 {

public static void main(String[] args) {

String s = end();

System.out.println(s);

cast(s);

}

//利用stringbuffer的append和indexof功能,当没有索引的时候,indexof返回-1  实现功能(1)

public static String end() {

StringBuffer str = new StringBuffer();

while (true) {

String a = new Scanner(System.in).next();

str.append(a);

if (str.indexOf("end") >= 0) {break;}

}

// System.out.println(str);

return str.toString();

}

//遍历出字符串的每一个字符串,重新定义一个stringbuffer,每次都进行处理

public static void cast(String s) {

StringBuffer str = new StringBuffer(s);

int num = 0;

for (int i =0;i<str.length();i++) {

if (str.charAt(i)>='a' && str.charAt(i)<='z') {

str = str.replace(i, i+1, str.substring(i, i+1).toUpperCase());

num++;

}

else if (str.charAt(i)>='A' && str.charAt(i)<='Z') {

str = str.replace(i, i+1, str.substring(i, i+1).toLowerCase());

num++;

}

else {

str = str.replace(i, i+1, "*");

}

}

/*{

if (str.charAt(i)>='a' && str.charAt(i)<='z') {

str.substring(i,1).toUpperCase();

num++;

}

else if (str.charAt(i)>='A' && str.charAt(i)<='Z') {

str.substring(i,1).toLowerCase();

num++;

}

else {

str.replace(i,1,"*");

}

}*/

System.out.println(str.toString());

System.out.println(num);

}

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一...
    阿里高级软件架构师阅读 3,315评论 0 19
  • 前言 最先接触编程的知识是在大学里面,大学里面学了一些基础的知识,c语言,java语言,单片机的汇编语言等;大学毕...
    oceanfive阅读 3,151评论 0 7
  • 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔...
    开心的锣鼓阅读 3,347评论 0 9
  • 一、 1、请用Java写一个冒泡排序方法 【参考答案】 public static void Bubble(int...
    独云阅读 1,421评论 0 6
  • 2019年1月26日 星期六 戊戌年腊月二十二日 √静一致远 √智与权变 √勇以决断 √仁以取与 √强有所守 √礼...
    妈妈熊阅读 304评论 0 1