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. 10分钟弄懂javascript数组

    建议阅读时间 : 10分钟 主要内容:javascript数组的基本概念.属性.方法 新建数组: var arr01 = ["a","b","c&qu ...

  2. Java经典编程题50道之四十一

    海滩上有若干个一堆桃子,五只猴子来分.第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份. 第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中, ...

  3. 走进BFC

    在解释 BFC 是什么之前,需要先介绍 Box.Formatting Context的概念. Box: CSS布局的基本单位: Box 是 CSS 布局的对象和基本单位, 直观点来说,就是一个页面是由 ...

  4. sharepoint rest api 创建文档库 文件夹

    function createFolder() { var requestHeaders = { "Accept": "application/json;odata=ve ...

  5. windows端口占用处理工具

    一.描述 笔者在最近使用tomcat时,老是会遇到这种端口占用的问题,便写了这个小的exe,用于解决windows下的端口占用问题. 好吧,其实是我实在记不住CMD下的那几行命令.这玩意的实现比较简单 ...

  6. 记一次linux主机名莫名其妙变成了bogon

    起因:公司网络接口做了接口认证,虚拟机桥接至物理网卡无法完成认证进行网络访问,无奈之下只能讲虚拟机网络模式更改为NAT模式,更改完成之后进行ssh登录,发现主机名发生了变化. 更改NAT模式之前 [r ...

  7. 高效率遍历Map以及在循环过程中移除 remove指定key

    //高效率遍历Map以及在循环过程中移除 remove指定key //使用iter循环的时候 可以在循环中移除key,for在循环的过程中移除会报错哦 //本方法效率高 Iterator iter = ...

  8. Python Click 学习笔记(转)

    原文链接:Python Click 学习笔记 Click 是 Flask 的团队 pallets 开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现.恰好我最近在开发 ...

  9. C++ 获取文件夹下的所有文件名

    获取文件夹下所有的文件名是常用的功能,今天再一次有这样的需求,所有就在网上查找了很多,并记下以供后用. 原文:http://blog.csdn.NET/cxf7394373/article/detai ...

  10. react-router 踩坑记

    react-router踩坑分享 背景 辛苦历程 JavaScript动态修改 第一次尝试 第二次尝试 第三次尝试 第四次尝试 总结步骤 其他方案 原理 History 常见的3种History Br ...