‘壹’ java中数字类型字符串排序问题,
import java.util.*;
class T
{
public static void main(String[] args)
{
String str="21#89#34#2#65#43#5#75$";
int index=str.indexOf("$");
String str1=str.substring(0,index);
String[] strs=str1.split("#");
int[] a=new int[strs.length];
for(int i=0;i<strs.length;i++)
{
a[i]=Integer.parseInt(strs[i]);
}
Arrays.sort(a);
for(int i=0;i<strs.length;i++)
{
System.out.println(a[i]);
}
}
}
‘贰’ java实现字符串中数字的截取排序;请给出具体的代码
import java.util.Set;
import java.util.TreeSet;
public class Demo {
public static void main(String[] args) {
String str1 = "-1an2b3j2.5";
String str2 = "123ab1sd2asd3";
Demo demo = new Demo();
demo.getNumbers(str1);
demo.getNumbers(str2);
}
public void getNumbers(String str) {
Set<Integer> set = new TreeSet<Integer>();
for (String s : str.split("\D+")) {
if (!s.equals("")) {
set.add(Integer.parseInt(s));
}
}
System.out.println(set);
}
}
‘叁’ java怎么让数组的数字从大到小排序
将数字从大到小排序的方法:
例如简一点的冒泡排序,将第一个数字和后面的数字逐个比较大小,如果小于,则互换位置,大于则不动。此时,第一个数为数组中的最大数。然后再将第二个数与后面的数逐个比较,以次类推。
示例代码如下:
publicclassTest{
publicstaticvoidmain(String[]args){
int[]array={12,3,1254,235,435,236,25,34,23};
inttemp;
for(inti=0;i<array.length;i++){
for(intj=i+1;j<array.length;j++){
if(array[i]<array[j]){
temp=array[i];
array[i]=array[j];
array[j]=temp; //两个数交换位置
}
}
}
for(inti=0;i<array.length;i++){
System.out.print(array[i]+"");
}
}
}
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。
Java 语言中提供的数组是用来存储固定大小的同类型元素。
你可以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number0,number1,....,number99
(3)java字符数字排序扩展阅读
Java中利用数组进行数字排序一般有4种方法:
1、选择排序是先将数组中的第一个数作为最大或最小数,然后通过循环比较交换最大数或最小数与一轮比较中第一个数位置进行排序。
2、冒泡排序也是先将数组中的第一个数作为最大或最小数,循环比较相邻两个数的大小,满足条件就互换位置,将最大数或最小数沉底。
3、快速排序法主要是运用Arrays类中的Arrays.sort方法()实现。
4、插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序。
‘肆’ 用JAVA实现字符串提取数字并排序
importjava.util.*;
classT
{
publicstaticvoidmain(String[]args)
{
Stringstr="21#89#34#2#65#43#5#75$";
intindex=str.indexOf("$");
Stringstr1=str.substring(0,index);
String[]strs=str1.split("#");
int[]a=newint[strs.length];
for(inti=0;i<strs.length;i++)
{
a[i]=Integer.parseInt(strs[i]);
}
Arrays.sort(a);
for(inti=0;i<strs.length;i++)
{
System.out.println(a[i]);
}
}
}
‘伍’ java 数据中包含字符串和数字时如何排序
把数字转成String型的然后把它们全都放入一个String数组里 然后调用Arrays.sort(String[]);
这样就会把你的这个数组进行排序。。。
‘陆’ java 输入任意几个数字,怎样将他们从大到小排序
public static void main(String[] args) {Scanner scan = new Scanner(System.in)。
}
System.out.println("从大到小输出:");
for (int m = num.length-1; m >=0; m--) {
System.out.println(num[m]);//从大到小输出
}
}
‘柒’ java list 字符精确排序 例如: a1 a12 a13 a2 a3 排序后是:a1 a2 a3 a12 a13 ,不是a1 a12 a13 a2 a3
package test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Test {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("3");list.add("a1");list.add("a12");list.add("a13");list.add("a2");
list.add("a3");list.add("c1");list.add("b2");list.add("d1");
list.add("b1");list.add("c3");list.add("2");list.add("1");
System.out.println("排序前------>"+list);
Collections.sort(list, new Comparator<String>() {
String regNum = "[\\d]";//数字字符
String regStr = "[^\\d]";//非数字字符
@Override
public int compare(String o1, String o2) {
int num1 = Integer.parseInt(o1.replaceAll(regStr, ""));
int num2 = Integer.parseInt(o2.replaceAll(regStr, ""));
String str1 = o1.replaceAll(regNum, "");
String str2 = o2.replaceAll(regNum, "");
//都有字母
if( ! isnull(str1) && ! isnull(str2)){
if(str1.compareTo(str2) > 0){
return 1;
}else if(str1.compareTo(str2) < 0){
return -1;
}else{
return num1-num2;
}
}else{//存在数字
//都是数字
if(isnull(str1) && isnull(str2)){
return num1 - num2;
}else if(isnull(str1) && ! isnull(str2)){//数字排前面:o1是数字,o2不是数字
return -1;
}else if(! isnull(str1) && isnull(str2)){//数字排前面:o1不是数字,o2是数字
return 1;
}else{
return 0;
}
}
}
});
System.out.println("排序后======>"+list);
}
private static boolean isnull(String str){
return str == null || str.trim().length() == 0;
}
}
‘捌’ java 字符串排序
//这个绝对满足您的要求
import java.util.Arrays;
public class StringSort {
public static void main(String[] args) {
String ss[]={"ab","wang","hi","a","abff"};
MyString mySs[]=new MyString[ss.length];//创建自定义排序的数组
for (int i = 0; i < ss.length; i++) {
mySs[i]=new MyString(ss[i]);
}
Arrays.sort(mySs);//排序
for (int i = 0; i < mySs.length; i++) {
System.out.println(mySs[i].s);
}
}
}
class MyString implements Comparable<MyString>{
public String s;//包装String
public MyString(String s) {
this.s = s;
}
@Override
public int compareTo(MyString o) {
if(o==null||o.s==null) return 1;
if(s.length()>o.s.length()) return 1;
else if(s.length()<o.s.length()) return -1;
return s.compareTo(o.s);
}
}