Java去重字符串的两种方法以及java中冒号的使用

package com.removesamestring;
import java.io.BufferedWriter;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Removesamestring {

    public static void main(String[] args) {        
        String text = "test test text text remove remove string string";
        System.out.println("strWay1:"+strWay1(text));
        System.out.println("strWay2:"+strWay2(text));        
    }  
//方法一
public static String strWay1(String text) { String[] str = text.split(" "); if(str.length == 0) { return null; } List<String> list = new ArrayList<String>(); StringBuffer sb = new StringBuffer(); for(int i = 0;i < str.length; i++) { if(!list.contains(str[i])){ list.add(str[i]); sb.append(str[i]+" "); } } return sb.toString().substring(0,sb.toString().length()-1); } //方法二 public static String strWay2(String text) { String[] str = text.split(" "); ArrayList<String> as = new ArrayList<>(); f:for(int i = 0; i < str.length;i++) { for(int j = 0; j < as.size();j++ ) { if(str[i].equals(as.get(j))) { continue f;//里层的循环continue直接跳出外层循环,继续执行外层循环 } } as.add(str[i]); } StringBuffer buffer = new StringBuffer(); for(String string : as) { buffer.append(string+" "); } return buffer.toString().substring(0,buffer.toString().lastIndexOf(" ")); } }

 在学习的过程中,又发现了一个新的知识点,java 中的冒号(:),可以这么来用:用作跳转标记。解释如图中红色注释。
下面来回忆一下另外三种用法:

  • 其一: 用来遍历

    String[] abc = new String[3]{"a","b","c"};
    forString str : abc){
        System.out.println(str);    //这个地方的冒号就是遍历abc的集合,取出每一个元素
  • 其二: 三元运算符   Boolean ? true的内容:false的内容

    int a=1;
    int b=3;
    int i = a>b?3:1;//这个地方的冒号用来选择值,如果a大于b,那么i=3(true),否则i=1(false)
  • 其三:  switch选择

    .....
    switch (i) {
                case "AUS":
                    URL= GetComposedParameters("globalfund", "AUS", "no", "no", "en-AU", "A4","");
                    break;
                case "GFRP1":
                    URL= GetComposedParameters("globalfundp1", "", "no", "no", "en-GB", "A4","");
                    break;
                case "NZ":
                    URL= GetComposedParameters("globalfund", "NZ", "no", "no", "en-NZ", "A4","");
                    break;
    }
    return URL;

   //用于switch选择,当i等于下面的值事,执行后面的操作,然后break跳出; 如果没有break,那么将执行下面的oprate操作,一直到底!

posted @ 2017-11-03 10:25  软测小生  阅读(12636)  评论(0编辑  收藏  举报