當前位置:首頁 » 編程語言 » javastring排序

javastring排序

發布時間: 2022-06-11 13:53:41

A. java如何對String str="3,12,34,14,12"從小到大排序,不要逗號,重復的只保留一個

整體思想就是將字元串先分割成數組,然後轉換成數字進行比較,可用Set進行去重。

//將字元串分割成數組
Stringstr="3,12,34,14,12";
String[]strArray=str.split(",");
//將字元串轉換成整型方便進行比較
List<Integer>list=newLinkedList<Integer>();
for(Strings:strArray){
list.add(Integer.valueOf(s.trim()));
}
//將整型數組添加到Set中進行去重
Set<Integer>set=newHashSet<Integer>();
set.addAll(list);
//將整型數組進行排序
Integer[]intArray=newInteger[set.size()];
set.toArray(intArray);
Arrays.sort(intArray);
//將整型再轉回字元串
Stringresult=String.valueOf(intArray[0]);
for(inti=1;i<intArray.length;i++){
result=result+""+intArray[i];
}

B. JAVA String類型的數組怎麼逆序排序

String[] a = new String[]{"A","B","C","D","E"};
String[] b=new String[a.length];
int indexA=a.length-1,indexB=0;
for(String s:a){
b[indexB]=a[indexA];
indexA--;
indexB++;
}

C. java 編寫對String類型的數組元素進行排序,求高手,求幫助,求代碼,謝謝啊~~

用Arrays就行了 如
String[] ss={"eee","ddd","aaa","bbb","ccc"};
Arrays.sort(ss);//給數組ss排序 執行後ss就已經被排過序了。
System.out.println(Arrays.toString(ss));
結果:[aaa, bbb, ccc, ddd, eee]

D. java中怎麼對一串字元進行排序!

importjava.util.Arrays;

publicclassStringSort{

publicstaticvoidmain(String[]args){
Stringstring="togoodtoonostringandnow";
StringsortString=sortChar(string);
System.out.println(sortString);
}

privatestaticStringsortChar(Stringstr){
//1.將字元串轉化成數組
char[]chs=stringToArray(str);
//2.對數組進行排序
sort(chs);
//3.將數組轉成字元串
returntoString(chs);
}

privatestaticStringtoString(char[]chs){
returnnewString(chs);
}

//對字元數組進行升序排序
privatestaticvoidsort(char[]chs){
Arrays.sort(chs);
}

//將字元串轉化成為數組
privatestaticchar[]stringToArray(Stringstring){
returnstring.toCharArray();
}
}

E. JAVA中對String數組根據字元長度進行分組並且排序

好像也很復雜...
String[]str={"1","2","3","66","54","513","323","12","121"};
Map<Integer,List<String>>map=newHashMap<Integer,List<String>>();//按照長度區分數據
Set<Integer>indexSet=newHashSet<Integer>();//長度去重
for(Stringstring:str){
intlength=string.length();
List<String>list=map.get(length);
if(list==null){
list=newArrayList<String>();
}
list.add(string);
Collections.sort(list);//默認排序
indexSet.add(length);
map.put(length,list);
}
List<Integer>indexList=newArrayList<Integer>();
for(Integerinteger:indexSet){
indexList.add(integer);
}
Collections.sort(indexList);//長度默認排序
JSONArrayjsonArray=newJSONArray();
for(Integerinteger:indexList){
List<String>valueList=map.get(integer);
String[]strings=valueList.toArray(newString[valueList.size()]);
jsonArray.add(strings);
}
System.out.println(jsonArray.toString());

F. 如何用java對字元串進行排序

importjava.util.*;
publicclassCharSort
{
privatestaticScannersc=newScanner(System.in);
privatestaticStringBuffersb=newStringBuffer();
publicstaticvoidmain(String[]args)
{
System.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());

}
}

G. java如何實現字元串比較大小排序

使用 String.compareTo 方法:

compareTo() 的返回值是int, 它是先比較對應字元的大小(ASCII碼順序)
1、如果字元串相等返回值0
2、如果第一個字元和參數的第一個字元不等,結束比較,返回他們之間的差值(ascii碼值)(負值前字元串的值小於後字元串,正值前字元串大於後字元串)
3、如果第一個字元和參數的第一個字元相等,則以第二個字元和參數的第二個字元做比較,以此類推,直至比較的字元或被比較的字元有一方全比較完,這時就比較字元的長度.

例:
String s1 = "abc";
String s2 = "abcd";
String s3 = "abcdfg";
String s4 = "1bcdfg";
String s5 = "cdfg";
System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1長度小1)
System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1長度小3)
System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII碼是97,"1"的的ASCII碼是49,所以返回48)
System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII碼是97,"c"的ASCII碼是99,所以返回-2)

H. JAVA String str排序演算法 是這樣寫嗎

  1. compare string的大小需要用compareTo,例子

Stringstr1="hello";
Stringstr2="helloworld";
//returnValue可以返回負數,0,和正數
//如果返回負數,說明str1<str2
//如果返回為0,說明str1.equals(str2)
//如果返回正數,說明str1>str2
intreturnValue=str1.compareTo(str2);

2. 你需要把String str變換成數組,例如

//你的str
Stringstr="6222750107116807A900"+""
+"6222756100000419A1100"+""
+"621690105761620A1001"+""
+"6222750107116807A1900"+
"6222756100000419A2000"+
"6212690105761620A100"+
"6222750107116807A800"+
"6222756100000419A1300"+""
+"6212690105761620A1400";
//需要換成數組str1
String[]str1=newString[]{"6222750107116807A900","6222756100000419A1100","621690105761620A1001","6222750107116807A1900",
"6222756100000419A2000","6212690105761620A100","6222750107116807A800","6222756100000419A1300","6212690105761620A1400"};

你試著嘗試輸出一下str.length(),返回的是185,是整個str的長度,如果你輸出str1.length,返回的值是9,表示有多少String

3. 你的冒泡排序演算法並沒有錯,所以修改完我說的1,2條後程序應該會正確運行。2060823590WZY說的也沒有錯,冒泡排序確實有點慢,但是對於初學者來說搞懂邏輯與基礎是最重要的,等掌握好基礎後再學習排序。

I. java String數組按照某個中文數組排序

public class Wgy {
public static void main(String[] args) {
String[] str = new String[] { "甲 供=0", "采購站=0", "調 入=0", "材料廠=0",
"甲 控=200", "自 購=0" };
String[] s = new String[] { "材料廠", "采購站", "自 購", "甲 供", "甲 控", "調 入" };
StringBuffer result = new StringBuffer();
for (int i = 0; i < s.length; i++) {
for (int j = 0; j < str.length; j++) {
if ((s[i].substring(0,2)).equals(str[j].substring(0, 2))) {
result.append(str[j]);
result.append(",");
}
}
}
String res=result.substring(0,result.length()-1);
String[] ret=res.toString().split(",");
System.out.println(Arrays.toString(ret));
}
}

J. java字元串通過什麼來排序,字元串是怎麼比較大小的

答案:java中所有類的排序是根據該類中的toString方法來排序的,你可以通過查看String類的底層代碼找到其toString()方法來看他是如何排序的。這是原理
對於單獨這個問題:字元串排序時根據字元串第一個字元的按照自然順序排序
自然順序:例如如果第一個是數字,則按照從小到大排序,如果第一個字元相同則再比較第二個字元
以此類推,對於字母則根據26個英文字母的順序決定。

=======================如果是你想問的請給最佳回答,有不懂得可以追問==========謝謝。

熱點內容
創建存儲空間 發布:2024-05-18 21:20:57 瀏覽:120
sql日期和時間 發布:2024-05-18 21:16:19 瀏覽:141
安卓網頁怎麼截取 發布:2024-05-18 20:53:56 瀏覽:970
在配置更新的時候沒電關機怎麼辦 發布:2024-05-18 20:36:10 瀏覽:927
win7訪問win2000 發布:2024-05-18 20:27:41 瀏覽:388
青島人社局密碼多少 發布:2024-05-18 20:19:10 瀏覽:734
無法存儲呼叫轉移 發布:2024-05-18 20:18:30 瀏覽:126
資料庫的調優 發布:2024-05-18 20:18:29 瀏覽:346
sqlserver注冊表清理 發布:2024-05-18 20:13:14 瀏覽:991
linux刪除連接 發布:2024-05-18 20:06:56 瀏覽:822