java万级字符串查重

java万级字符串查重

问:java查询一个字符串中重复的字符
  1. 答:public static void main(String[] args) throws Exception {
    String a = "abcdaebijkd";
    String strRes = "";
    for(int i=0;i<a.length();i++){
    if(a.lastIndexOf(a.toCharArray()[i]) != i){
    strRes = strRes + a.toCharArray()[i];
    }
    }
    System.out.println(strRes);
    }
问:java怎么查询一个字符串中重复的字符,并且计算他出现的次数。
  1. 答:把这个字符串按照这个字符分割,如果分出来有n段,就说明这个字符出现了n-1次
    string
    str="laslkav;lkjsn;skldnf;";
    string
    m=";";
    string[]
    r=str.split(m);
    system.out.println(r.length-1);
  2. 答:不明白
    试试这样
    str.replace("abcd","abcd|");
    str.split("\\|").length
问:JAVA字符串中去重复字符串
  1. 答:最好用个特殊符号
    如教f练f教f练f裁f判f裁f判f裁f判f运f动f员f运f动f员
    这样就可以通过字符串的split的方法取出所有单个字符
    然后存在 HashSet里 再读出来就好了啊
  2. 答:用一个数组将字符串装起来,然后对字符串从第一个字符开始和之前的字符进行匹配检索,只要有相等的,就继续向后匹配,只要有两个字符及以上匹配相等,就删除当前已匹配小字符串就行了。
  3. 答:最简单的办法,扫描字符串,对每个字符,删除其后续出现,这样可以保证不会有重复的字符出现,那自然也不会有重复字符串出现。
    但是,从语义上说,会有问题
    比如“教练教授裁判”会变成“教练授裁判”
问:Java字符串去掉重复字符
  1. 答:先把这些字符串用一个变量保存,然后转换成tochararray数组进行循环可以有contains进行判断是否有相同字符,用嵌套循环,随即改变数组值
  2. 答:通过Map集合应该可以吧:把字符串的每个字符作为Map集合的Key,放入Map集合,然后再把Key重新组合成新的字符串,有兴趣可以试一下啊,看看是否是你想要的结果。
问:求: 用 Java 正则去掉字符串中重复出现的字符!
  1. 答:str = str.replaceAll("(?s)(.)(?=.*\\1)", "");
    -----------------------------------
    (?s)(.)(?=.*\1)
    (?s) 开启单行模式 DOTALL 让. 号匹配任意字符
    (.) 任意字符 并捕获在第一组
    (?=.*\1) 这是断言, 表示后面内容将是 任意个字符加上第一组所捕获的内容
    这样子,如果这整个式子匹配到,表示,第一个捕获组内容在字符串中,至少出现两次,替换为 "" 空串.
    进行 全局替换后, 整个字符串所出现的字符将不重复。
问:java 判断两个字符串有多少个字符相同
  1. 答:写个方法:
    public char getSame(){
    String s1="12345";
    String s2="67821";
    char[] c1 = s1.toCharArray();
    int i=0;
    while(i<5){
    if(s2.indexOf(c1[i])!=-1){
  2. 答:给你个思路,把字符串转换成字符数组,数组元素逐一比对。应该有更好的办法。我们可以一同研究。
问:java判断一个字符串是否含有多个相同的字符
  1. 答:String s = "Replace the string with yourself.";
    //根据要求,字符串有2个相同的字符,即判定为有相同字符
    public boolean haveSameChar(String s) {
      for (int i=0;i<s.length();i++) {
        char ch = s.charAt(i);
        String s1 = s.substring(i+1);//i之后的字符串
        if (s1.indexOf(ch)>=0) {
          return true;
        }
      }
      return false;
    }
  2. 答:boolean a = s.contains("??");
问:java比较字符串相同,如果相同就输出相同的字符串,如果用java写,在线等???
  1. 答:...你真的是在问这个问题?
    例:
    if(“str”.equals("str")){
    System.out.println("str");
    }
  2. 答:是字符串全部相同?
    String a="test";
    String b="Test";
    if(a!=""&&a.equals(b)){
    System.out.println(a);
    }
    if(a==""&&b==""){
    System.out.println(a);
    }
  3. 答:用字符串的equals方法 eg:String str = "";
    String str1 = "123";
    if(str.equals(str1)){
    System.out.println(str1);
    }
  4. 答:Test{
    public Test(){}
    public static void main(String[] args){
        String s1 ="aa";
        String s2 = "bb";
        if s1.equals(s2)
            System.out.println(s1);
    }
    }
  5. 答:String a="abc";
    String b="abc";
    String isequals(String a,String b){
    if(a!=null){
    if(a.equals(b)){
    return a;
    }
    }
    return null;
    }
  6. 答:public class Test {
    public static void main(String[] args) {
    String a = "123";
    String b = "123";
    if(a.equals(b)){
    System.out.println(a+"="+b);
    }
    }
    }
  7. 答:String a="qwe";
    String b="qwe";
    if(a.equals(b)){
    System.out.println(a);
    }
  8. 答:代码如下:
    public static void main(String [] args){
    String a = "xxxxx";
    String b = "xxxxx";
    printSame(a,b);
    }
    //比较并输出想同的字符串
    public static void printSame(String a ,String b){
    if(a != null && a.equals(b)){
    system.out.println("参数a和参数b相同,值等于"+a);
    }
    }
  9. 答:Scanner scan = new Scanner(System.in);
    System.out.println("请输入第一个字符");
    String yn=scan.next();
    System.out.println("请输入第一个字符");
    String yn2=scan.next();
    if(yn2.equals(yn)){
    System.out.println(yn2);
    }else{
    System.out.println("输入的两个字符不相等");
    }
java万级字符串查重
下载Doc文档

猜你喜欢