java例题_40 字母字符串转数组后排序
1 /*40 【程序 40 字符串排序】 输入一个字符串数组,按照字母表的降序对这些字符串进行排序。
2 题目:字符串排序。
3 */
4
5 /*分析
6 * 1、从键盘得到一个纯字母的字符串
7 * 2、遍历字符串的每一个字母
8 * 3、将字母按照ASCII码从大到小排序
9 * 排序实现方法:
10 * 将字符串存入数组中,再用冒泡排序实现
11 * */
12
13 //【注】
14 /*=====================字符串存入数组的三种方法===============
15 * String Str="abnckdjgdag";
16 char a[]=new char[Str.length()];
17
18 方法1 用于取出字符串的指定索引的字符charAt()---------------
19 for(int i=0;i<Str.length();i++){
20 a[i]=Str.charAt(i);//charAt(i)方法取出一个字符串索引为i的字符
21 }
22
23 方法2 用于直接将字符串传入数组toCharArray()----------------
24 a=Str.toCharArray();//toCharArry()方法将一个字符串按字符传入数组
25
26 方法3 用于将字符串的子串传入数组getChars()-----------------
27 Str.getChars(0,Str.length(),a,0);//getChars(Str要拷贝子串的起始索引,Str要拷贝子串的末尾索引,要拷贝到的数组,要拷贝到数组的起始索引)
28 ===============================================================================*/
29
30
31 package homework;
32
33 import java.util.Scanner;
34
35 public class _40 {
36
37 public static void main(String[] args) {
38 // 从键盘得到一个纯字母的字符串
39 System.out.println("请输入一个只包含字母的字符串,并以回车键结束:");
40 Scanner sc=new Scanner(System.in);
41 String str=sc.nextLine();
42 String str2= str.replaceAll("[^a-zA-Z]", ""); //字符串中只保留字母的操作
43 //得到字符串的长度,用于创建数组
44 int n=str2.length();
45 //将字符串存入数组中
46 char[] a=new char[n];
47 a=str2.toCharArray(); //经过测试,并没有将字符串结束符存入数组
48 // //测试
49 // for (int i = 0; i < a.length; i++) {
50 // System.out.print(a[i]+"1");
51 // }
52 //冒泡排序法 (abcdefghijk)
53 char temp;
54 for (int i = 0; i < a.length; i++) {
55 for (int j = 0; j < (a.length-1); j++) {
56 if (a[j]<a[j+1]) {
57 temp=a[j];
58 a[j]=a[j+1];
59 a[j+1]=temp;
60 // System.out.print(j+" "); //测试
61 }
62 }
63 }
64 //输出结果
65 for (int i = 0; i < a.length; i++) {
66 System.out.print(a[i]+" ");
67 }
68
69 }
70
71 }
java例题_40 字母字符串转数组后排序的更多相关文章
- java学习之—合并两个数组并排序
/** * 合并两个数组并排序 * Create by Administrator * 2018/6/26 0026 * 下午 4:29 **/ public class MergeApp { pub ...
- Java例题_31 逆序输出数组的值
1 /*31 [程序 31 数组逆序] 2 题目:将一个数组逆序输出. 3 程序分析:用第一个与最后一个交换. 4 */ 5 6 /*分析 7 * 第一种方法:找到这个数组的中间下标,然后交换两端的数 ...
- java例题_34 用指正对三个数排序
1 /*34 [程序 34 三个数排序] 2 题目:输入 3 个数 a,b,c,按大小顺序输出. 3 程序分析:利用指针方法. 4 */ 5 6 /*分析 7 * 指针方法的本质是按地址传值,将a,b ...
- Java数组排序基础算法,二维数组,排序时间计算,随机数产生
import java.util.Arrays; //包含Arrays import java.util.Random; public class HelloWorld { public static ...
- 用Java编程语言对一个无序整形数组进行排序(冒泡排序,选择排序,插入排序)
public static void main(String[] args) { /** * 冒泡排序 * 思路:每个轮次都让第一个数和其后所有的数进行轮比较,如果这轮的第一个数大则和其下一个数交换位 ...
- Java OOP中的字符串篇
字符串的三大特征: String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 一.定义 查看 API 会发现,String.St ...
- javascript:算法之数组sort排序
数组sort排序 sort比较次数,sort用法,sort常用 描述 方法sort()将在原数组上对数组元素进行排序,即排序时不创建新的数组副本.如果调用方法sort()时没有使用参数,将按字母顺序( ...
- [原]Java面试题-将字符串中数字提取出来排序后输出
[Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...
- JAVA关于字符串&&字符数组处理的小题目
JAVA关于字符串&&字符数组的小题目 第二题:分析以下需求,并用代码实现 1.键盘录入一个大字符串,再录入一个小字符串 2.统计小字符串在大字符串中出现的次数 3.代码运行打印格式: ...
随机推荐
- web online code editor All In One
web online code editor All In One 在线代码编辑器 Monaco Editor 摩纳哥编辑器 ️ 22.1k The Monaco Editor is the code ...
- 微信小程序批量上传图片 All In One
微信小程序批量上传图片 All In One open-data https://developers.weixin.qq.com/miniprogram/dev/component/open-dat ...
- GitHub & GraphQL API
GitHub & GraphQL API https://gist.github.com/xgqfrms/15559e7545f558d85c5efdea79171a3d refs xgqfr ...
- how to stop MongoDB from the command line
how to stop MongoDB from the command line stop mongod https://docs.mongodb.com/manual/tutorial/manag ...
- how to find jobs in the website codes
how to find jobs in the website codes X-Custom-Heade https://developer.mozilla.org/en-US/docs/Web/AP ...
- xcode upgrade & git bug
xcode upgrade & git bug ➜ op-static git checkout feature/select-seat-system Agreeing to the Xcod ...
- Flutter: 粘贴板
文档 import 'package:flutter/services.dart'; /// 把文本复制进入粘贴板 Clipboard.setData(ClipboardData(text: &quo ...
- 三种远程部署war包检测
简介 远程部署漏洞属于服务器.中间件配置问题,攻击者可通过远程部署漏洞获取系统权限,远程部署漏洞经常出现在Tomcat.Jboss.Weblogic等web容器之上. 0x01 ### tomcat部 ...
- webpack理解
打包工具 可以将多个静态文件打包成一个静态文件例如将1.js.2.js.3.css打包成h.js一个静态文件 这样做的好处是:可以减少页面的请求次数 以往是请求多个静态页面,使用webpack后会减少 ...
- 如何将IHttpHandler和IHttpModule迁移到ASP.NET Core中间件
ASP.NET Core是一个跨平台.开源的框架,用于在Windows.Mac和Linux操作系统(OS)上开发web应用程序.你可以使用以下任何IDE开发ASP.NET Core 应用程序: Vis ...