Java中统计字符个数以及反序非相同字符的方法详解

 更新时间:2013年05月26日 15:08:40   作者:  
本篇文章是对Java中统计字符个数以及反序非相同字符的方法进行了详细的分析介绍,需要的朋友参考下
复制代码 代码如下:

import java.util.ArrayList;
import java.util.List;
public class Test2 {
 /**
  * @param args
  */
 public static void main(String[] args) {
  String src = "A B C D E B C";
  //替换掉空格
  src = src.replaceAll(" ", "") ;

  System.out.println("去除空格后字符串:" + src) ;
  List<Character> list = new ArrayList<Character>() ;
  int[] bb = new int[256];  
  char[] cs = src.toCharArray();  

  //倒序
  int mid = cs.length / 2 ;
  int idx = cs.length -1 ;
  for (int i = 0; i < mid ; i++){
   char tmp = cs[i] ;
   cs[i] = cs[idx] ;
   cs[idx] = tmp ;
   idx-- ;
  }
  //统计,并且过滤相同的
  for (char c : cs) { 
   if (bb[c] <1) {
    list.add(c) ;
   }
   bb[c] = bb[c] + 1;  
     }
  System.out.println();
  for (int i = 0; i < list.size(); i++){
   System.out.print(list.get(i)) ;
  }
  System.out.println() ;

  for (int i = 0; i < list.size(); i++){
   char c = list.get(i) ;

   System.out.println(c + " " + bb[c] + "次") ;
  }

 }
}

String a = "abcd,efg";
String b = ")(*&^%$#@![]{},.//;:'? <>";
要求是判断String a 里有没有哪个字符在String b里出现 ,效率越高越好
 
 * 查找某些字符是否在另一个字符串里出现
复制代码 代码如下:

 * 
 * @author Java人(java2000.net)
*/ 
public class Test { 
  /**
   * @param args
   */ 
  public static void main(String[] args) { 
    String a = "abcd,efg"; 
    String b = ")(*&^%$#@![]{},.///;:'? <>"; 
    byte[] bb = new byte[256]; 
    char[] cs = b.toCharArray(); 
    for (char c : cs) { 
      bb[c] = 1; 
    } 
    cs = a.toCharArray(); 
    for (char c : cs) { 
      if (bb[c] == 1) { 
        System.out.println(c); 
      } 
    } 
  } 


相关文章

  • java中hashCode、equals的使用方法教程

    java中hashCode、equals的使用方法教程

    hashCode()和equals()定义在Object类中,这个类是所有java类的基类,所以所有的java类都继承这两个方法。下面这篇文章主要给大家介绍了关于java中hashCode、equals的使用方法,需要的朋友可以参考下。
    2017-12-12
  • Spring整合mybatis、springMVC总结

    Spring整合mybatis、springMVC总结

    这篇文章主要为大家详细介绍了Java整合Mybatis,SpringMVC,文中有详细的代码示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2023-05-05
  • 关于Synchronized和ReentranLock的区别及说明

    关于Synchronized和ReentranLock的区别及说明

    文章介绍了Java中的`synchronized`关键字和`ReentrantLock`类,两者都可以用于解决多线程同步问题,但`ReentrantLock`提供了更多的功能和灵活性
    2024-12-12
  • Springboot如何获取上下文ApplicationContext

    Springboot如何获取上下文ApplicationContext

    这篇文章主要介绍了Springboot如何获取上下文ApplicationContext,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • 深入理解Java8新特性之Stream API的终止操作步骤

    深入理解Java8新特性之Stream API的终止操作步骤

    Stream是Java8的一大亮点,是对容器对象功能的增强,它专注于对容器对象进行各种非常便利、高效的 聚合操作(aggregate operation)或者大批量数据操作。Stream API借助于同样新出现的Lambda表达式,极大的提高编程效率和程序可读性,感兴趣的朋友快来看看吧
    2021-11-11
  • Maven多模块之父子关系的创建

    Maven多模块之父子关系的创建

    这篇文章主要介绍了Maven多模块之父子关系的创建,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • JAVA算法起步之快速排序实例

    JAVA算法起步之快速排序实例

    这篇文章主要介绍了JAVA算法起步之快速排序实例,需要的朋友可以参考下
    2014-02-02
  • Mybatis常见注解有哪些(总结)

    Mybatis常见注解有哪些(总结)

    这篇文章主要介绍了Mybatis常见注解有哪些(总结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Java实现修改图片文件名的方法示例

    Java实现修改图片文件名的方法示例

    在很多应用中,用户需要对文件进行重命名操作,包括图片文件,图片文件的重命名操作可以是基于文件内容、日期、用户输入等,本项目的目标是实现一个Java程序,能够修改图片文件的文件名,并进行简单的文件名处理,需要的朋友可以参考下
    2025-02-02
  •  Java图形化界面编程实现简单计算器

     Java图形化界面编程实现简单计算器

    这篇文章主要介绍了Java图形化界面编程实现简单计算器,下面文章围绕Java图形化界面编程实现简单计算器的相关资料展开详细内容,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-01-01

最新评论