• java String类练习


    1.设计一个方法 将字符串反转;ok-->ko

    public class StringStudy{
    	public String reverse(String a){
    		int l=a.length();
    		char[] b=b=a.toCharArray();
    		for(int i=0;i<l/2;i++){//0,1			
    			char temp=b[i];//a,b
    			b[i]=b[l-1-i];//d,c
    			b[l-1-i]=temp;//a,b
    			//System.out.println(i+":"+b[i]+"-"+b[l-1-i]);			
    		}				
    		a=new String(b);
    		return a;
    	}
    }
    
    
    public class Tests{
    	public static void main(String[] args){
    		StringStudy x=new StringStudy();
    		String y="中国红";
    		y=x.reverse(y);
    		System.out.println(y);
    	}
    }//1
    

     

    2.设计一个方法 将给定字符串的正序和反序进行连接 ok-->okko

    //1.设计一个方法 将字符串反转;ok-->ko
    
    public class StringStudy{
    	public String reverse(String a){
    		int l=a.length();
    		char[] b=b=a.toCharArray();
    		for(int i=0;i<l/2;i++){//0,1			
    			char temp=b[i];//a,b
    			b[i]=b[l-1-i];//d,c
    			b[l-1-i]=temp;//a,b
    			//System.out.println(i+":"+b[i]+"-"+b[l-1-i]);			
    		}				
    		a=new String(b);
    		return a;
    	}
    //}
    
    //2.设计一个方法 将给定字符串的正序和反序进行连接 ok-->okko
    
    //public class StringStudy{
    	public String fp(String a){
    		/*
    		int l=a.length();
    		char[] b=a.toCharArray();
    		for(int i=0;i<l/2;i++){
    			char temp=b[i];
    			b[i]=b[l-1-i];
    			b[l-1-i]=temp;
    		}
    		String aa=new String(b);
    		a=a.concat(aa);
    		return a;
    		*/
    		return a.concat(this.reverse(a));
    	}
    }
    

      

    public class Tests{
    	public static void main(String[] args){
    		StringStudy x=new StringStudy();
    		String y="abcd";
    		y=x.fp(y);
    		System.out.println(y);
    	}
    }//2
    

    3.判断字符串是否是回文? abccba abcba

    public class StringStudy{
    	public String reverse(String a){
    		int l=a.length();
    		char[] b=b=a.toCharArray();
    		for(int i=0;i<l/2;i++){//0,1			
    			char temp=b[i];//a,b
    			b[i]=b[l-1-i];//d,c
    			b[l-1-i]=temp;//a,b
    			//System.out.println(i+":"+b[i]+"-"+b[l-1-i]);			
    		}				
    		a=new String(b);
    		return a;
    	}
        public boolean isHuiWen(String a){		
    		if(this.reverse(a).equals(a)){
    			return true;
    		}
    		return false;
    	}
    }
    

      

    public class Tests{
    	public static void main(String[] args){
    		StringStudy x=new StringStudy();
    		String y="abcba";
    		boolean z=x.isHuiWen(y);
    		if(z){
    			System.out.println("是回文");
    		}else{
    			System.out.println("不是回文");
    		}
    	
    	}
    }//3
    

      

    4.将给定的字符串右位移 x位置;(helloworld 2)-->ldhellowor

    //4.将给定的字符串右位移 x位置;(helloworld 2)-->ldhellowor
    
    public class StringStudy{
    	public String rightY(String a,int index){
    		String d="不能左移";
    		if(index>0){
    			index%=a.length();
    			String j=a.substring(0,a.length()-index);
    			String k=a.substring(a.length()-index);
    			d=k.concat(j);
    			
    		}
    		return d;
    		
    		
    	}
    }
    

     

    public class Tests{
    	public static void main(String[] args){
    		StringStudy x=new StringStudy();
    		String y="helloworld";
    		int z=1;
    		y=x.rightY(y,z);
    		System.out.println(y);
    	}
    }//4
    

     

    5.寻找若干字符串中最长的那个;ab,abcd-->abcd

    //5.寻找若干字符串中最长的那个;ab,abcd-->abcd
    
    public class StringStudy{
    	public String find(String...a){
    		String b=a[0];
    		int max=b.length();
    		for(int i=1;i<a.length;i++){
    			if(max<a[i].length()){
    				b=a[i];
    				max=b.length();
    			}
    			
    		}
    		return b;
                }
    }
    

     

    public class Tests{
    	public static void main(String[] args){
    		StringStudy x=new StringStudy();		
    		String j=x.find("abcdefgh","abc","e","jklkjljklljk");
    		System.out.println(j);
    	}
    }//5
    

       

    6.统计给定字母在字符串中出现的次数 "this is a a" "a"-->2

    //6.统计给定字母在字符串中出现的次数 "this is a a test java" "a"-->4
    
    public class StringStudy{
    	/*
    	public int find(String a,char b){
    		int x=0;
    		for(int i=0;i<a.length();i++){
    			if(a.charAt(i)==b){
    				x++;
    			}			
    		}
    		return x;
    	}//方式1
    	*/
    	public int find(String a,char b){		
    		String c=a.replaceAll(String.valueOf(b),"");
    		return a.length()-c.length();
    	}//方式2
    }
    

      

    public class Tests{
    	public static void main(String[] args){
    		//StringStudy z=new StringStudy();
    		StringStudy z=new StringStudy();
    		int m=z.find("this is a a test java",'a');
    		System.out.println(m);
    	}
    }//6
    

      

    7.将给定的字符串每一个首字母大写"this is a a"--> This Is A A

    //7.将给定的字符串每一个首字母大写"this is a a"--> This Is A A
    
    public class StringStudy{
    	/*
    	public String changeF(String a){
    		String result="";
    		String[] b=a.split(" ");
    		for(int i=0;i<b.length;i++){
    			String x=b[i].substring(0,1).toUpperCase();
    			String y=b[i].substring(1);
    			result=result.concat(x.concat(y)+" ");//最后一个字符多个空格
    		}
    		
    		//result=result.substring(0,a.length());
    		result=result.trim();
    		return result;
    	}//方式1
    	*/
    	
    	boolean flag=true;
    	public String changeF(String a){
    		char[] x=a.toCharArray();//转为数组(小写)
    		String b=a.toUpperCase();
    		char[] y=b.toCharArray();//数组(大写)
    		x[0]=y[0];
    		int index=a.indexOf(" ");//找寻a字符串出现索引的第一个位置
    		//2
    		int n=0;
    		while(flag){
    			if(index!=-1 && index<(a.length()-1)){	
    				n+=index;//2,4
    				n++;
    				a=a.substring(index+1);//cd ef;ef;
    				x[n]=y[n];//C
    				index=a.indexOf(" ");//2
    			}else{
    				flag=false;
    			}
    		}
    		a=new String(x);		
    		return a;//方式2
    		
    	}
    }
    
    public class Tests{
    	public static void main(String[] args){
    		StringStudy x=new StringStudy();
    		System.out.println(x.changeF("this is a test of java"));
    	}
    }//7
    

      

    8.获取给定字符串中的全部数组"za8yq32"-->832

     

    //8.获取给定字符串中的全部数字"za8yq32"-->832
    public class StringStudy{
    	public int check(String a){
    		String z="";
    		for(int i=0;i<a.length();i++){
    			if(a.codePointAt(i)>=48 && a.codePointAt(i)<=57){//0对应的code是48,9是57
    				//z+=a.substring(i,i+1);
    				z+=(char)a.codePointAt(i);
    			}
    		}
    		if(z.length()>0){
    			return Integer.parseInt(z);
    		}
    		return 0;
    	}
    }
    

     

    public class Tests{
    	public static void main(String[] args){
    		
    		StringStudy x=new StringStudy();
    		System.out.println(x.check("za8yq32"));
    		
    		
    	}
    }
    

     

    越努力,越幸运!!! good good study,day day up!!!
  • 相关阅读:
    Java的学习笔记(二)
    Java的学习笔记
    简单界面生成
    登录界面
    播放器
    java计划
    求和
    修改后的抽奖系统
    第十周作业
    JAVA第五次作业
  • 原文地址:https://www.cnblogs.com/canglongdao/p/12904322.html
Copyright © 2020-2023  润新知