展开全部

import java.util.ArrayList;

import java.util.List;

public class Sort {

/**

* @param args

*/

public static void main(String[] args) {

e69da5e6ba903231313335323631343130323136353331333337623533// TODO Auto-generated method stub

String[] nums = { "100A", "98.5", "98.5A", "34", "52", "100", "98",

"98.5B" };

// 冒泡排序法排序

for (int i = 0; i

for (int j = 0; j

double num1;// 前一个数字去字母后的数值

boolean char1 = false; // 前一个数字是否含有字母

int ascii1 = 0;// 前一个数字所含字母的ASCII码

// 获取每个数字的最后一位,判断是否为大写字母(判断其ASCII码是否在65到90之间)

if ((int) (nums[j].toCharArray()[nums[j].length() - 1]) >= 65

&& (int) (nums[j].toCharArray()[nums[j].length() - 1]) <= 90) {

num1 = Double.parseDouble(nums[j].substring(0,

nums[j].length() - 1));

char1 = true;

ascii1 = (int) (nums[j].toCharArray()[nums[j].length() - 1]);

} else {

num1 = Double.parseDouble(nums[j]);

}

double num2;// 后一个数字去字母后的数值

boolean char2 = false; // 后一个数字是否含有字母

int ascii2 = 0;// 后一个数字所含字母的ASCII码

// 获取每个数字的最后一位,判断是否为大写字母(判断其ASCII码是否在65到90之间)

if ((int) (nums[j + 1].toCharArray()[nums[j + 1].length() - 1]) >= 65

&& (int) (nums[j + 1].toCharArray()[nums[j + 1]

.length() - 1]) <= 90) {

num2 = Double.parseDouble(nums[j + 1].substring(0,

nums[j + 1].length() - 1));

char2 = true;

ascii2 = (int) (nums[j + 1].toCharArray()[nums[j + 1]

.length() - 1]);

} else {

num2 = Double.parseDouble(nums[j + 1]);

}

// 从大到小排序

if (num1

String temp = nums[j];

nums[j] = nums[j + 1];

nums[j + 1] = temp;

} else if (num1 == num2) {// 数值相等则判断是否有字母以及字母的顺序

// 如果两个都有字母,则判断顺序

if (char1 && char2) {

// 按ASCII码从小到大排列(即从A到Z排列)

if (ascii1 > ascii2) {

String temp = nums[j];

nums[j] = nums[j + 1];

nums[j + 1] = temp;

}

} else if (!char1 && char2) {// 如果后面一个数字有字母

String temp = nums[j];

nums[j] = nums[j + 1];

nums[j + 1] = temp;

}

}

}

}

for (int i = 0; i

System.out.println(nums[i]);

}

}

}

我为了赋值方便,用的是String数组,但是跟用list没有区别,方法还是一样的,只是获取长度的时候调的方法不同。数组用.length, list用的是.size()。

java排列序数_JAVA排序数字字母混合相关推荐

  1. Java 随机生成 “纯数字“、“纯字母“ 、“数字字母混合“ ID 并保持全局唯一

    文章目录 随机生成 "纯数字"."纯字母" ."数字字母混合" ID并保持全局唯一 一.随机生成纯数字ID 二.随机生成纯字母ID 三.随机 ...

  2. JS实现数字字母混合验证码(数字+大写字母+小写字母)

    我之前写了一篇<JS实现随机验证码>,可以产生随机数字.随机颜色.随机位置,但只能产生数字验证码,今天在此基础上进行改进,使之可以随机大写字母.小写字母.数字三种类型. 思路 我们使用Ma ...

  3. php 包含字母随机数_php生成随机数字、字母或数字字母混合的字符串

    这次给大家带来php生成随机数字.字母或数字字母混合的字符串,php生成随机数字.字母或数字字母混合字符串的注意事项有哪些,下面就是实战案例,一起来看一下. php 生成随机字符串,可以指定是纯数字 ...

  4. 用机器学习sklearn+opencv-python过古诗文网4位数字+字母混合验证码

    目录 获取验证码图片 用opencv-python处理图片 制作训练数据集 训练模型 识别验证码 编写古诗文网的登录爬虫代码 总结与提高 源码下载 在本节我们将使用sklearn和opencv-pyt ...

  5. 使用 Python 生成类数字字母混合验证码图片

    分析 首先是要生成含有数字字母的字符串 然后创建画布,并且随机填充画布的颜色 最后将字符画上去,为了保证画上去的字符不同色,需将这些字符保存为一个列表通过多次画上去,期间要随机设置颜色值 在这里我们通 ...

  6. java sort方法_Java排序方法sort用法详解

    本文实例为大家分享了java对数组.集合的排序方法,供大家参考,具体内容如下 对数组的排序: //对数组排序 public void arraySort(){ int[] arr = {1,4,6,3 ...

  7. java快拍_Java排序之快排

    基本实现思路: 从数列中挑出一个元素,称为 "基准" 重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边).在这个分割之后, ...

  8. java 比较算法_JAVA排序算法实现和比较:冒泡,桶,选择,快排,归并

    一.冒泡排序: 实现思想: 重复地走访过要排序的元素列,一次比较两个相邻的元素,如果他们的顺序(如从大到小.首字母从A到Z)错误就把他们交换过来.走访元素的工作是重复地进行直到没有相邻元素需要交换,也 ...

  9. java炸弹游戏_java实现数字炸弹

    数字炸弹游戏规则 数字炸弹游戏规则:在一个数字范围内,有一个数字作为炸弹,谁猜中这个炸弹就被惩罚.比如范围是1 ~ 99,炸弹是60,然后猜了一个数字是30,30不是炸弹,那么现在猜数字的范围就缩小到 ...

最新文章

  1. 不满你说,我最近跟Java源码杠上了...
  2. ios wallet开发_iOS: 使用UICollectionView实现Wallet效果
  3. Shell脚本详细介绍
  4. 大学计算机基础 课程的说课,大学计算机基础资料说课稿.ppt
  5. c# mysql 插入 和 查询_C#对数据库的操作(增删改查)
  6. SpringBoot 上传文件(单个、多个文件)
  7. html英文期刊参考文献,外文期刊参考文献标准格式
  8. 2+22+222+2222+。。。。
  9. 服务器恶意发包行为排查
  10. iOS调用系统相机、相册里面的文字显示英文
  11. 安卓和鸿蒙系统,对标Apple Watch!魅族推首款智能手表,官宣接入华为鸿蒙系统...
  12. 排列组合 C(n,m)
  13. 人间不正经生活语录(一)
  14. Python-爬虫(Scrapy爬虫框架,爬取豆瓣读书和评分)
  15. 区块链带来的技术创新和变革
  16. 技术分享| anyRTC服务单端口设计
  17. 3D132期预测号码是多少
  18. 支付宝支付的过程 java_java实现沙箱测试环境支付宝支付(demo)和整合微信支付和支付宝支付到ssm环境全过程(附源码)...
  19. 60个常用word技巧
  20. 《扬帆优配》北向资金新动向!增持硅片龙头,减仓“保险茅”

热门文章

  1. 零空间(Null space)的理解
  2. Nginx处理HTTP请求的11个阶段
  3. 从3D打印成本来看3D打印的预测
  4. 社会心理学的六个经典实验
  5. 最明白的Unity3D手机平台分辨率自动匹配教程-适合新手
  6. C语言入门系列之10.结构体和共用体
  7. (旋转数组的)二分查找算法
  8. 主机加固对服务器防勒索病毒有哪些好处
  9. java逻辑运算符的坑
  10. 买了很多的书,看了很少的书.