博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字符串操作(字符数统计及字符串反转)
阅读量:4324 次
发布时间:2019-06-06

本文共 4197 字,大约阅读时间需要 13 分钟。

1.字符统计

package com.homework;//统计字符串中相同字符出现的次数public class StatisticString {            public static void main(String[] args) {                                    String str = "abcdeaaadfec53543543253@!#@!#$$@@!@#@!#!@3";        Boolean flag;         int count;        for (int i = 0; i < str.length(); i++)        {            flag = true;            count=0;            for (int k = 0; k < i; k++)            {                if (str.charAt(i) == str.charAt(k)) flag = false;            }            if (flag == true)            {                for (int j = 0; j < str.length(); j++)                {                    if (str.charAt(i) == str.charAt(j))                    {                        count++;                    }                }                System.out.println(str.charAt(i) + "出现" + count + "次");            }        }    }}

2.字符串反转

package com.homework;import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.List;import java.util.Scanner;//字符串反转,如I love java 将反转成  java love I. public class StringReverse {    public void swap(char[] arr, int begin, int end) {        while(begin < end) {            char temp = arr[begin];            arr[begin] = arr[end];            arr[end] = temp;            begin++;            end--;        }    }        public String swapWords(String str) {        char[] arr = str.toCharArray();        swap(arr, 0, arr.length - 1);        int begin = 0;        for (int i = 1; i < arr.length; i++) {            if (arr[i] == ' ') {                swap(arr, begin, i - 1);                begin = i + 1;            }        }        return new String(arr);    }        public static void main(String[] args) {        //缺点:one前要有空格,不然“one”将反转为“eno”                String str = " one two three four five";        System.out.println(new StringReverse().swapWords(str));                        //******************************************************        //以上为全部程序,下面为补充                //******************************************************        //利用jdk自带方法实现以上功能                //public static void main(String[] args) {
Scanner sc = new Scanner(System.in); String str1 = sc.nextLine(); String[] sArr = str1.split(" ");//I love java List
list = new ArrayList
(); list = Arrays.asList(sArr); // for(int i=0;i

控制台输出

 

 

 

补充:你知道 “ 回 ” 字有四种写法吗?????????????????

               回、囘、囬、囗

 

   七种字符串反转方法

import java.util.Stack;public class StringReverse {   public static String reverse1(String s) {  int length = s.length();  if (length <= 1)   return s;  String left = s.substring(0, length / 2);  String right = s.substring(length / 2, length);  return reverse1(right) + reverse1(left); }   public static String reverse2(String s) {  int length = s.length();  String reverse = "";  for (int i = 0; i < length; i++)   reverse = s.charAt(i) + reverse;  return reverse; }   public static String reverse3(String s) {  char[] array = s.toCharArray();  String reverse = "";  for (int i = array.length - 1; i >= 0; i--)   reverse += array[i];    return reverse; }   public static String reverse4(String s) {  return new StringBuffer(s).reverse().toString(); }   public static String reverse5(String orig) {  char[] s = orig.toCharArray();  int n = s.length - 1;  int halfLength = n / 2;  for (int i = 0; i <= halfLength; i++) {   char temp = s[i];   s[i] = s[n - i];   s[n - i] = temp;  }  return new String(s); }   public static String reverse6(String s) {    char[] str = s.toCharArray();    int begin = 0;  int end = s.length() - 1;    while (begin < end) {   str[begin] = (char) (str[begin] ^ str[end]);   str[end] = (char) (str[begin] ^ str[end]);   str[begin] = (char) (str[end] ^ str[begin]);   begin++;   end--;  }    return new String(str); }   public static String reverse7(String s) {  char[] str = s.toCharArray();  Stack
stack = new Stack
(); for (int i = 0; i < str.length; i++) stack.push(str[i]); String reversed = ""; for (int i = 0; i < str.length; i++) reversed += stack.pop(); return reversed; } }

 

转载于:https://www.cnblogs.com/zjfjava/p/6071589.html

你可能感兴趣的文章
python知识点 2014-07-09
查看>>
FloatingActionButton的一点学习感悟
查看>>
ABAP CDS ON HANA-(10)項目結合して一つ項目として表示
查看>>
网站地址信息
查看>>
产品经理 - 登录 注册
查看>>
Notepad++ 通过g++编译
查看>>
Ruby Gem 的基础知识和详解
查看>>
Vue学习
查看>>
html5的本地存储
查看>>
Java设计模式系列之中介者模式
查看>>
eclipse编译时过滤SVN版本控制信息方法(转)
查看>>
CSS3中使用calc()设置宽度和高度
查看>>
泉五培训Day5
查看>>
理解constructor属性
查看>>
java学习 java 的继承机制 暑假第三天
查看>>
计算机基础(计算机专业)
查看>>
人人必知的10个 jQuery 小技巧
查看>>
【坦克大战】Unity3D多人在线游戏(泰课的坦克大战--旋转的螺丝钉)
查看>>
Android 开发BottomNavigationView学习
查看>>
unix-poll
查看>>