package lianxi;

public class maopao {
public static void main(String[] args){
int[] i=new int[]{45,67,54,35,26,76,85};
for(int a=0;a<i.length;a++){
for(int b=0;b<i.length;b++){
if(i[a]<i[b]){
int temp=i[a];
i[a]=i[b];
i[b]=temp; }
}
}go(i);
}
public static void go(int[] l){
for(int o=0;o<l.length;o++){
System.out.print(l[o]+" ");
}
}
}

冒泡排序就是用两个for循环第一层循环每一次循环拿一个数然后用第二个循环跟数组中的其他数进行比较,直到循环结束,排序就完成了。

package day24;
//直接排序
public class paixu {
public static void main(String[] args){
int[] i=new int[]{45,35,67,86,46,25,47,37,85};// for(int m=0;m<i.length;m++){
int indexmax=m;
for(int n=m+1;n<i.length;n++){
if(i[indexmax]<i[n]){
indexmax=n;//把循环中第一个索引换成了最大值的索引
}
}
int temp=i[m];
i[m]=i[indexmax];//把最大值赋给循环中第一个值。
i[indexmax]=temp;//把第一个值放在其他位置
}
xunhuan(i);
} public static void xunhuan(int[] t){
for (int l=0;l<t.length;l++){
System.out.println(t[l]);}
}}

 直接排序就是直接拿数去比较完就放到应该放到的位置上,直到循环结束

package lianxi;
//反转排序
public class fanzhuan {
public static void main(String[] args){
int[] i=new int[]{5,4,8,3,9,5,23};
int lm=i.length;
for(int a=0;a<lm/ 2;a++){
int temp=i[i.length-a-1];
i[i.length-a-1]=i[a];
i[a]=temp;
}
go(i);
}
public static void go(int[] s){
for(int b=0;b<s.length;b++){
System.out.println(s[b]);
}
}
}

  数组的反转,让循环的次数小于数组长度的一半,然后让循环次数对应的索引值的数组值跟对着的数交换就好了。

package lianxi;

public class ShuZu {
String[] xzName = { "白羊", "金牛", "双子", "巨蟹", "狮子", "处女", "天秤", "天蝎", "射手", "摩羯", "水瓶", "双鱼" };
String[] xzDate = { "03月21日─04月20日", "04月21日─05月20日", "05月21日─06月21日", "06月22日─07月22日", "07月23日─08月22日",
"08月23日─09月22日", "09月23日─10月22日", "10月23日─11月21日", "11月22日─12月21日", "12月22日─01月19日", "01月20日─02月18日",
"02月19日─03月20日" }; } package lianxi; import java.util.Scanner; public class TestShuzu {
public static void main(String[] args){
ShuZu sz=new ShuZu();
Scanner sc=new Scanner(System.in);
System.out.println("请输入星座名字,并用逗号隔开");
String X_name=sc.nextLine(); if(X_name.length()==2){
for(int i=0;i<sz.xzName.length;i++){
if(X_name.equals(sz.xzName[i])){//属性.equals就是指的属性的值
System.out.print(sz.xzDate[i]);
}
}
} else if(X_name.length()>2){
String[] y=X_name.split(",");
for(int w=0;w<y.length;w++){
String ow = null;
for(int q=0;q<sz.xzName.length;q++){
if(y[w].equals(sz.xzName[q])){ ow=sz.xzDate[q];
}
} System.out.println(ow);
} }
sc.close();
}
}

  输入星座名,输出对应的月份,可以输入多个星座查询,主要是得想到string可以用split方法分割成几个数组

java数组排序(冒泡、直排)反转的更多相关文章

  1. java基础入门之数组排序冒泡法

    public class ArrayTest03{ /* Name:数组排序,冒泡法 Power by :Stuart Date:2015-4-23*/ public static void main ...

  2. Java数组排序

    Java数组排序Arrays.sort,以及Comparator接口的用法 有的时候需要对数组里的element进行排序.当然可以自己编写合适的排序方法,但既然java包里有自带的Arrays.sor ...

  3. Java写 插入 选择 冒泡 快排

    /** * Created by wushuang on 2014/11/19. */ public class SortTest { @Test public void mainTest() { i ...

  4. java数组排序(插入排序、冒泡排序、选择排序)与递归 代码示例

    import java.util.Scanner; public class OrderBy { public static void main(String[] args) { // Scanner ...

  5. Java实现一个字符串的反转

    Java小程序实现字符串的反转: 方法一: public class reverseString { public static void main(String[] args) { String s ...

  6. Java Web实现IOC控制反转之依赖注入

    控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心. 控制反转一般分为两种类型,依赖注入 ...

  7. Java温故而知新-冒泡法排序

    冒泡法排序是各种初学者在学习数组与循环结构时都会练习的一种简单排序算法. 冒泡法的精髓在于比较相邻的两个元素,较大的元素会不断的排到队伍后面去,就像水里的泡泡一样不断向上跑. 想像一下倒在一个透明玻璃 ...

  8. Java数组排序基础算法,二维数组,排序时间计算,随机数产生

    import java.util.Arrays; //包含Arrays import java.util.Random; public class HelloWorld { public static ...

  9. [Java]数组排序-选择排序 冒泡排序 插入排序

    1 选择排序  原理:a 将数组中的每个元素,与第一个元素比较          如果这个元素小于第一个元素, 就将这个         两个元素交换.       b 每轮使用a的规则, 可以选择出 ...

随机推荐

  1. JSP/Servlet Web 学习笔记 DaySix —— EL表达式

    1)EL从scope中得到参数时可以自动转换类型,因此对于类型转换的限制更加宽松. 2)使用EL表达式,可以简化变量和对象的访问. 3)EL表达式必须以 ${XXXX} 来表示. 4)EL提供点(.) ...

  2. nginx安装文档

    1.   安装依赖包 yum -y install pcre-devel yum -y install openssl-devel yum -y install gcc yum -y install ...

  3. 如何用VS进行程序调试

    VS是一个强大的IDE,如果你现在只会简单地用它查看一下执行效果,那就太大材小用了. 1. CRT函数报错 首先来说说最常见的一个编译错误.微信里常常收到这个错误的截图提问. CRT(C Runtim ...

  4. 主题模型(概率潜语义分析PLSA、隐含狄利克雷分布LDA)

    一.pLSA模型 1.朴素贝叶斯的分析 (1)可以胜任许多文本分类问题.(2)无法解决语料中一词多义和多词一义的问题--它更像是词法分析,而非语义分析.(3)如果使用词向量作为文档的特征,一词多义和多 ...

  5. JavaScript设计模式_05_发布订阅模式

    发布-订阅模式,定义了对象间的一种一对多的依赖关系,当一个对象的状态发生变化时,所有依赖它的对象都将得到通知.发布-订阅模式是使用比较广泛的一种模式,尤其是在异步编程中. /* * pre:发布-订阅 ...

  6. 平衡树初阶——AVL平衡二叉查找树+三大平衡树(Treap + Splay + SBT)模板【超详解】

    平衡树初阶——AVL平衡二叉查找树 一.什么是二叉树 1. 什么是树. 计算机科学里面的树本质是一个树状图.树首先是一个有向无环图,由根节点指向子结点.但是不严格的说,我们也研究无向树.所谓无向树就是 ...

  7. python 标准库 -- signal

    signal 的核心是 : 设置信号处理函数. 预定义信号 signal.SIG_DFL signal.SIGBUS signal.SIGFPE signal.SIGIO signal.SIGPOLL ...

  8. kubeadm 安装1.6.0版本出错 未解决

    工具包已经安装好了. [root@master data]# rpm -qa |grep kubekubeadm-1.6.0-0.x86_64kubectl-1.6.0-0.x86_64kubelet ...

  9. 使用File、Path和Directory进行常见的操作

    我们偶尔会用到文件操作,其中File.Path和Directory这三个类是比较常见的,今天写了一个测试demo,也是顺便学习一下,记录一二. BTW,使用这几个类的时候需要引用using Syste ...

  10. Hibernate执行原生态sql语句

    @Override public Integer update(String id, String username){ String sql = "update Team_CheLiang ...