导航:首页 > 编程语言 > java字符串排列

java字符串排列

发布时间:2023-02-25 02:31:49

java:字符串排序问题

public class test{
public static void main(String[] args) {
String[] str = {"acbcc","bgd","abvc","fkei","dsad","gt"};
String temp;
System.out.print("排序前数组:");
for (int i = 0; i < str.length; i++) {
System.out.print(str[i]+"\t");
}
System.out.println("");
for (int i = 0; i < str.length; i++) {
for (int j = 0; j < str.length - i - 1; j++) {
/**冒泡排序比较说明:
1.先取出每一个元素字符串第一个字符(substring(0,1)这个就是取第一个元素的字符)
2.然后将这个字符串转换成char型(charAt(0)这个就是将一个单字符串转换成char型)
3.接着将char型字符转换成整型(这一步只要是求一个字符的ASCII码,因为ASCII码是一个整型数字,这样做是便于比较)
4.最后通过比较使用冒泡排序
*/
if ((int)(str[j].substring(0,1).charAt(0)) > (int)(str[j+1].substring(0,1).charAt(0))) {
temp = str[j];
str[j] = str[j+1];
str[j+1] = temp;
}
}
}
System.out.print("排序后数组:");
for (int i = 0; i < str.length; i++) {
System.out.print(str[i]+"\t");
}
}
}

② java编程实现对输入的一串字符串进行排序(升序和降序排列区分大小写)

/**
*str(需要排序的字符串),desc(true:从小到大,false:从大到小)
*@paramstr
*@paramdesc
*/
publicstaticvoidstringSort(Stringstr,booleandesc){
char[]array=str.toCharArray();
if(desc){//从小到大排序
for(inti=0;i<array.length;i++){
for(intj=0;j<array.length-i-1;j++){
if(array[j]>array[j+1]){
chartemp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
System.out.print("从小到大:");
for(inti=0;i<array.length;i++){
if(i==array.length-1){
System.out.println(array[i]);
}else{
System.out.print(array[i]+",");
}
}
}else{
for(inti=0;i<array.length;i++){
for(intj=0;j<array.length-i-1;j++){
if(array[j]>array[j+1]){
chartemp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
System.out.print("从小到大:");
for(inti=0;i<array.length;i++){
if(i==array.length-1){
System.out.println(array[i]);
}else{
System.out.print(array[i]+",");
}
}
}
}

③ 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);
}
}

④ java字符串通过什么来排序,字符串是怎么比较大小的

public class Util {
public static void main(String[] args) {
//键盘接受用户输入的数
java.util.Scanner sc = new java.util.Scanner(System.in);
//放入数组,好排序,这里定义double类型就是如果用户输入的小回数也可以
double[] arr = new double[16];
//循环答用户输入的16个数
for(int i = 1; i <= 16; i++){
System.out.println("请输入第" + i +"个数");
arr[i-1] = sc.nextDouble();
}
//进行排序
java.util.Arrays.sort(arr);
//输出排序后的16个数,顺序是从小到大
System.out.println(java.util.Arrays.toString(arr));
}
}

⑤ java 字符串排序

你好。代码如下:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class BaiTest10 {
public static void main(String[] args) {
System.out.println("请输入一串字符串:") ;
Scanner sc = new Scanner(System.in) ;
String str = sc.next() ;
System.out.println("排序前:" + str);
String newStr = sort(str) ;
System.out.println("排序后:" + newStr);
}

public static String sort(String str) {
char[] ch = str.toCharArray() ;
List<Character> list = new ArrayList<Character>() ;
for (int i=0;i<ch.length;i++) {
list.add(ch[i]) ;
}
Collections.sort(list);
StringBuffer sb = new StringBuffer() ;
for (int i=0;i<ch.length;i++) {
sb.append(list.get(i)) ;
}
return sb.toString() ;
}
}

⑥ java中怎么按字符串中几位排序字符串

import java.util.*;
public class CharSort
{
private static Scanner sc=new Scanner(System.in);
private static StringBuffer sb=new StringBuffer();
public static void main(String[] args)
{
System.out.println("\n\t\t==========字符串排序!==========\n");
init();
}//初始化!
private static void init()
{
System.out.println("请输入:");
for (; ; )
{
String a=input();
char[] arr=a.toCharArray();
Arrays.sort(arr);
sb.append(a);
print(arr,sb);
}
}
//扫描!
private static String input()
{
String a=sc.nextLine();
return a;
}
//打印!
private static void print(char[] arr,StringBuffer sb)
{
System.out.println("\n字符串排序演示:");
for (int i=0;i<arr.length ;i++ )
{
System.out.print(arr[i]);
}
System.out.println("\n=====================\n倒序演示:");
System.out.print(sb.reverse());

}
}

⑦ 如何用java对字符串进行排序

importjava.util.*;
publicclassCharSort
{
privatestaticScannersc=newScanner(System.in);
privatestaticStringBuffersb=newStringBuffer();
publicstaticvoidmain(String[]args)
{
.out.println(" ==========字符串排序!========== ");
init();
}//初始化!
privatestaticvoidinit()
{
System.out.println("请输入:");
for(;;)
{
Stringa=input();
char[]arr=a.toCharArray();
Arrays.sort(arr);
sb.append(a);
print(arr,sb);
}
}
//扫描!
privatestaticStringinput()
{
Stringa=sc.nextLine();
returna;
}
//打印!
privatestaticvoidprint(char[]arr,StringBuffersb)
{
System.out.println(" 字符串排序演示:");
for(inti=0;i<arr.length;i++)
{
System.out.print(arr[i]);
}
System.out.println(" ===================== 倒序演示:");
System.out.print(sb.reverse());

}
}

⑧ java 字符串排序

public class StringSort {
public static void main(String []args) {
String[] s={"a","b","c","d","m","f"};
for(int i=s.length-1;i>=1;i--){
for(int j=0;j<=i-1;j++) {
if(s[j].compareTo(s[j+1])<0) {
String temp=null;
temp=s[j];
s[j]=s[j+1];
s[j+1]=temp;
}
}
}
for(String a:s){
System.out.print(a+" ");
}
}
}
不用compareTo就比较麻烦了,比较字符串的实质是比较字符串的字母,首字母相同,比较下一个,然后又相同的话,再下一个....所以你可以先用substring();截出第一个字符,然后再比较,相同的再截第二个,.....
有好的方法提供给你了,你就直接用,不要把简单的问题复杂化,只要知道就行了,就比如字符串的比较实质是先比第一个字母,再第二个一样,若实在是要进行再细一方面怎么排序,可以查看API文档,看字符串有哪些方法,再在这些方法的基础上自己动手去写,还不是一样写的出,但这针对你的这个问题,就落下乘了,你想想就觉得有点复杂吧!

阅读全文

与java字符串排列相关的资料

热点内容
力控转发数据客户端模式如何建立 浏览:200
怎么样让自己的网站不被别人看到 浏览:711
编程扩展效果如何 浏览:335
荣耀畅玩手环同步qq 浏览:475
怎么向sql中添加数据库 浏览:596
录歌失败重启app什么意思 浏览:522
压缩文件包怎么在微信发送 浏览:432
mysql数据库怎么插入时间值 浏览:191
微信视频不能转发朋友圈 浏览:596
影视后期的app有哪些 浏览:956
电子保单数据出错什么意思 浏览:368
如何以文件下载音乐 浏览:438
计算机网络章节练习 浏览:999
单片机的外部中断程序 浏览:48
表格批量更名找不到指定文件 浏览:869
js的elseif 浏览:584
3dmaxvray视频教程 浏览:905
imgtool工具中文版 浏览:539
java帮助文件在哪里 浏览:965
win10切换输入语言 浏览:696

友情链接