案例1:写一个压缩字符串的方法,例如aaaabbcxxx,则输出a4b2c1x3。

public static String zipString(String str){

  String result = "";//用于拼接新串的变量

  char last = str.charAt(0);//用于获取下一个单个字符

  int length = str.length();//获取字符串长度,用于遍历的条件

  int count = 1;//计数器,用于记录每个字符重叠的次数

  for(int i = 1 ; i<length ; i++){//从第二个索引开始判断

    if(last==str.charAt(i)){//判断下一个字符是否与当前字符相等

      count++;

    }else{

      result += last + "" +count;

      last = str.charAt(i);//把当前字符给last变量

      count = 1;//恢复计数器

    }

  }

  String outString =result+last+count;

  if(outString.length()==str.length())

  return str;

  else

  return outString;

}

原文地址:https://www.cnblogs.com/erfsfj-dbc/p/9925773.html

时间: 2024-10-08 10:17:35

案例1:写一个压缩字符串的方法,例如aaaabbcxxx,则输出a4b2c1x3。的相关文章

python中将指定的字符串转换为大写字母并每隔2个字符用空格分割后得到一个新字符串的方法

在例子中对指定的字符串: faa5fbb5fcc5fdd5010200000028000001900000000a002d00000000017d7840000003e800005fa55fb55fc55fd5 使用了三种方法将其转换为大写字母并每隔2个字符用空格分割处理后得到一个新字符串,为: FA A5 FB B5 FC C5 FD D5 01 02 00 00 00 28 00 00 01 90 00 00 00 0A 00 2D 00 00 00 00 01 7D 78 40 00 00

写一个将字符串转成驼峰命名的方法

实现一个方法将一个字符串转为驼峰命名法.例如border-bottom-color转为borderBottomColor 所用方法:toUpperCase()方法. 第一种思路:将字符串使用split方法以-分割,然后把第一项之后的每一个的首字母转换为大写. var str="border-bottom-color"; function stringToCamel(str){ var temp=str.split("-"); for(var i=1;i<tem

写一个实现字符串首字母大写的函数

var str="ralkhasdlfho"; var newStr; function change(str){ newStr=str.substring(0,1).toUpperCase()+str.substring(1); } change(str); document.write(newStr); </script>

[LeetCode] Design Compressed String Iterator 设计压缩字符串的迭代器

Design and implement a data structure for a compressed string iterator. It should support the following operations: next and hasNext. The given compressed string will be in the form of each letter followed by a positive integer representing the numbe

图片压缩的具体方法你知道多少

在我们日常的工作中,会接触到很多图片文件,而有些图片还需要经常的进行大小的改变,如果一个网站对于图片有大小的限制,那么我们就需要将我们手中的图片压缩变小,图片压缩的具体方法你知道多少呢?下面小编为大家介绍一个压缩图片的方法,希望可以帮到你!参考迅捷压缩软件1:电脑上安装图片压缩软件,压缩软件有三个压缩的功能.点击图片压缩就可以. 2:添加要进行压缩的图片,点击页面中的添加文件或者添加文件夹的按钮,选择目标文件. 3:点击选择一个合适的压缩选项,在添加文件下有输出格式和压缩选项的设置,根据实际情况

编写一个实现字符串替换的程序,

1: 题目 健写一个实现字符串替换的程序,该程序必须似含函数 replace(char*s,char*t,char“u),该函数实现将字符串s中所有出现的子串t替换为串u,并 输出替换后的串及替换的子串个数.若s中不包含子串t,则输出提示信息:没有满足条件的子串t.例如:replace("java programming","java","c"):将输出 e programming,1":replace("java progr

JAVA用标准库自己写一个字符串翻转方法,翻转字符串中字母非单词

例如输入:I love programming 输出:I evol gnimmargorp 算法思路就是:根据空格提取每一个单词,存放在一个buffer里进行翻转处理,再添加到新的字符串.最后新的字符串就完成整个方法过程. public class ReserveString { public String reserve(String sentence){ String backS = new String(); StringBuffer temp = new StringBuffer();

今天面试问了一道题。说一串字符串由这几个符号组成&quot;&lt;&gt;{}[]()”,写一个算法,例如如果组成方式为“&lt;&gt;{[]}{}()”这种,也就是XML格式那种则返回true。否则返回false;

原创 今天面试问了一道题.说一串字符串由这几个符号组成"<>{}[]()",写一个算法,例如如果组成方式为"<>{[]}{}()"这种,也就是XML格式那种则返回true.否则返回false: 当时没想出来, 只想到了回文数解决办法.回文数解决办法是颠倒比较,相等为true: 换xml格式当时真没想到啥好方法: 在回来的路上想到了.. .. 去重,吧临近的一组去掉,在递归调用比较去重直到最后,如果有剩下则不返回false:否则true: 代码

自己写一个与startWith类似的判断方法

package com.hanqi.lianxi; import java.util.Scanner; public class startWith { //自己写一个与startWith类似的判断方法 public static void main(String[] args) { //首先随便定义一个字符串如下 String str = "fghkldrt"; //提示我们自己输入一个字符串,用来判断输入的字符串是不是刚刚定义的字符串的开头 Scanner sc = new Sca