将String类型的字符串里的内容进行反序排列得到一个新的String类型字符串,下面提供两种方法实现:

  法1、先将原String类型字符串转换为字符数组,通过字符数组来操作各个位上的单个字符,通过对称的交换首尾字符实现整体字符数组的反序操作,然后将此字符数组再转换为String类型的字符串。

 package ****;

 import java.util.*;

 public class sanweifanxushu_3_8 {
public static void main(String[] args){
int n,len=0;
System.out.println("请输入一个不以0为结尾的整数");
Scanner input = new Scanner(System.in);
n = input.nextInt();
if(n%10==0){
System.out.println("输入格式错误!输入不能以0结尾!");
}
else{
String str11 = String.valueOf(n);
len = str11.length();
for(int i=0;i<(len/2);i++){
str11 = swap(str11,i,len-1-i);
}
System.out.println(n+"的反序数是:"+str11);
} input.close();
} public static String swap(String str,int a,int b){
char temp1,temp2;
temp1 = str.charAt(a);
temp2 = str.charAt(b);
char[] chararr = str.toCharArray();
chararr[a] = temp2;
chararr[b] = temp1;
String s2 = new String(chararr);
System.out.println(s2);
return s2;
}
}

  法2、通过StringBuffer类的reverse()方法直接实现反序。

 package *******;

 import java.util.*;

 public class sanweifanxushu_3_8_2 {
public static void main(String[] args){
int n;
System.out.println("请输入一个不以0为结尾的整数");
Scanner input = new Scanner(System.in);
n = input.nextInt();
if(n%10==0){
System.out.println("输入格式错误!输入不能以0结尾!");
}
else{
String str11 = String.valueOf(n);
str11 = ReverseStr(str11);
System.out.println(n+"的反序数是:"+str11);
}
input.close();
} public static String ReverseStr(String str){
return (new StringBuffer(str)).reverse().toString();
} }

  

  不能通过String类型的replace()方法实现反序。

  其他方法待续······

String与反序的更多相关文章

  1. pojg2744找一个最长的字符串x,使得对于已经给出的字符串中的任意一个y,x或者是y的子串,或者x中的字符反序之后得到的新字符串是y的子串。

    http://poj.grids.cn/practice/2744 描述现在有一些由英文字符组成的大小写敏感的字符串,你的任务是找到一个最长的字符串x,使得对于已经给出的字符串中的任意一个y,x或者是 ...

  2. 前端总结·基础篇·JS(二)数组深拷贝、去重以及字符串反序和数组(Array)

    目录 这是<前端总结·基础篇·JS>系列的第二篇,主要总结一下JS数组的使用.技巧以及常用方法. 一.数组使用 1.1 定义数组 1.2 使用数组 1.3 类型检测 二.常用技巧 2.1 ...

  3. 编写一个类,其中包含一个排序的方法Sort(),当传入的是一串整数,就按照从小到大的顺序输出,如果传入的是一个字符串,就将字符串反序输出。

    namespace test2 { class Program { /// <summary> /// 编写一个类,其中包含一个排序的方法Sort(),当传入的是一串整数,就按照从小到大的 ...

  4. SortedDictionary<TKey,TValue>正序与反序排序及Dicttionary相关

    SortedDictionary<TKey,TValue>能对字典排序 using System; using System.Collections.Generic; using Syst ...

  5. 反序显示一个整数 Exercise06_04

    import java.util.Scanner; /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:反序显示一个整数 * */ public class Exercise06 ...

  6. Java 实现单链表反序

    //单链表反序 public class SingleLinkedListReverse { public static void main(String[] args) { Node head = ...

  7. 九度OJ 1058:反序输出 (基础题)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8454 解决:3042 题目描述: 输入任意4个字符(如:abcd), 并按反序输出(如:dcba) 输入: 题目可能包含多组用例,每组用例 ...

  8. 找一个四位数,要求该四位数的四倍刚好是该四位数的反序。 即b1b2b3b4 * 4 = b4b3b2b1

    找一个四位数,要求该四位数的四倍刚好是该四位数的反序. 即b1b2b3b4 * 4 = b4b3b2b1 解: 第一步,确认最末位 假设 b1b2b3b4 + b4b3b2b1 = [x0]x1x2x ...

  9. Django的列表反序

    Django虽然是python的web框架,但它不是所有的python特性都支持的. 最近在项目中遇到一个问题,需要在Django中将获得的列表反序排列,一开始我使用的是python的reverse方 ...

随机推荐

  1. js 播放声音文件

    from:http://hi.baidu.com/xykking/item/7f64a04364e43ce4bdf45127 我在做项目的时候,也遇到了这个问题,可以灵活的使用下面的这两种方法,我使用 ...

  2. hpfeeds协议解析

    一. hpfeeds协议简介 hpfeeds是一个轻量级的验证发布-订阅协议(authenticated publish-subscribe protocol). 发布-订阅协议:发布/订阅协议定义了 ...

  3. 第二百一十七节,jQuery EasyUI,NumberSpinner(数字微调)组件

    jQuery EasyUI,NumberSpinner(数字微调)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 NumberSpinner ...

  4. 嵌入式驱动开发之spi---spi串口通信调试

    一. 概念 SPI是 Serial Peripheral Interface(串型外部接口)的缩写.SPI接口有4根PIN脚,分别是:          * SPICLK     : 用于传输数据的同 ...

  5. Wise 打包细节

    细节 说明 添加卸载快捷方式 缺省的安装程序快捷方式中没有卸载项:只能通过控制面板删除,或者主程序目录下的UnWise.exe来卸载.实际上,该文件就可以作为卸载程序. 可以复制一个快捷方式,将程序名 ...

  6. redis php 实例一

    下面的例子都是基于php-redis这个扩展的. 1,connect 描述:实例连接到一个Redis. 参数:host: string,port: int 返回值:BOOL 成功返回:TRUE;失败返 ...

  7. iOS 横向菜单

    MKHorizMenu 源码地址 现在想要实现以下效果,其中“选时间”这部分是一个NavigationBar,“日期”是横向的菜单,“电影时段”是TableView. 比较难实现的是横向菜单,因为没有 ...

  8. Material design之Compatibility(适配)

    Compatibility,为Android L版本和旧版本进行适配设置. 一:Material Theme适配 因为Material Theme只能在Android L的版本中使用,所以为了应用能在 ...

  9. jQuery的validate验证插件使用方法

    (1)默认校验规则(1)required:true 必输字段(2)remote:"check.php" 使用ajax方法调用check.php验证输入值(3)email:true ...

  10. 赢在面试之Java多线程(十一)

    121,什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速.比如,如果一个线程完 ...