當前位置:首頁 » 編程語言 » java對字母排序

java對字母排序

發布時間: 2023-09-03 20:33:01

java輸入一個字元串,要求將該字元串中出現的英文字母,按照順序 進行輸出,區分大小寫,且大寫優先

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Demo {

public static void main(String[] args) {
// 假設輸入的內容
String input = "A8r4c5ja5AJp#7";
// 轉為 char[]
char[] inputArr = input.toCharArray();
// 存儲 大寫字母、小寫字母
List<String> upperCaseList = new ArrayList<>()
, lowerCaseList = new ArrayList<>();
for (int i = 0; i < inputArr.length; i++) {
if (inputArr[i] >= 65 && inputArr[i] <= 90) { // 大寫字母
upperCaseList.add(String.valueOf(inputArr[i]));
}else if (inputArr[i] >= 97 && inputArr[i] <= 122) { // 小寫字母
lowerCaseList.add(String.valueOf(inputArr[i]));
}
}
// 將大寫字母、小寫字母 List 轉為 String[]
String[] upperCaseArr = upperCaseList.toArray(new String[0])
, lowerCaseArr = lowerCaseList.toArray(new String[0]);
// 對大寫字母進行排序
Arrays.sort(upperCaseArr);
// 對小寫字母進行排序
Arrays.sort(lowerCaseArr);

// 取出大寫字母,拼成字元串
StringBuilder result = new StringBuilder();
for (int i = 0; i < upperCaseArr.length; i++) {
result.append(upperCaseArr[i]);
}

// 定義接收剩餘字母
StringBuilder remainingStr = new StringBuilder();
for (int i = 0; i < lowerCaseArr.length; i++) {
// 將小寫字母轉為大寫字母
String upperCaseStr = lowerCaseArr[i].toUpperCase();
// 取出大寫字母所在索引
int index = result.lastIndexOf(upperCaseStr);
if (index != -1) { // 存在大寫字母
// 取開頭,拼接
String startStr = result.substring(0, index + 1) + lowerCaseArr[i];
// 取結尾
String endStr = result.substring(index + 1);
// 重新賦值
result = new StringBuilder(startStr + endStr);
} else { // 不存在大寫字母
remainingStr.append(lowerCaseArr[i]);
}
}
// 將不存在的小寫字母拼接
result.append(remainingStr);
System.out.println(result);
}
}

② java中怎麼對英文字母進行排序

在java中對英文字母進行比較的時候,在java虛擬機中,他首先會轉換成ASII來進行比較,所以可以直接寫,如果是大寫和小寫的比較的話,大寫要加上一定的數字,才能進行比較,如果嫌麻煩,你也可以將大寫轉化成小寫進行比較,採用冒泡法排序吧

③ JAVA 字母排序,並插入字母後再次排序

//數組方式
String[]arr={"c","d","b","a"};
java.util.Arrays.sort(arr);
System.out.println(java.util.Arrays.toString(arr));//輸出數組

//使用TreeSet排序
TreeSet<String>ts=newTreeSet<String>();
ts.add("c");
ts.add("a");
ts.add("b");
System.out.println(ts);//輸出排序後的
//PS:因為TreeSet存在自然排序,所以不必實現Comparator還有Comparable介面

④ Java中如何實現字元串按字母順序排序

package string;
import java.util.Arrays;
import java.util.Scanner;
public class SortDemo
{
public static void main(String[] args)
{
String[] strings = new String[10];
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < strings.length; i++)
{
System.out.println("請輸入第" + (i + 1) + "個字元串:");
strings[i] = scanner.nextLine();
}
Arrays.sort(strings);
System.out.println(Arrays.toString(strings));
}
}

⑤ java 大小寫字母字元串排序 結果例如AaBb

importjava.util.*;
publicclassCharTest{
staticScannersc=newScanner(System.in);
publicstaticvoidmain(String[]args){
System.out.println("請輸入隨機字母!");

Stringstr=sc.nextLine().replaceAll("[^\w]+","").replaceAll("\d","");
StringBuilderstb=newStringBuilder();
char[]chs=str.toCharArray();

System.out.println(" 你輸入的是:"+str);

//排序!
for(inti=1;i<chs.length;i++){
for(intj=i;j>0;j--){
if(chs[j]<chs[j-1]){
chartem=chs[j];
chs[j]=chs[j-1];
chs[j-1]=tem;
}
}
}
stb.append(chs);
System.out.println(" 排序:大寫-->小寫-->正序排列:"+stb);
System.out.println(" 排序:小寫-->大寫-->倒序排列:"+stb.reverse());
}
}

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:433
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:558
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:744
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:147
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:240
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726