JAVA 八 排序,自动排序,冒泡,选择排序
1.java自带排序功能
1. 首先引入import java.util.*;
import java.util.*;
2. 使用的时候Arrays.sort(数组名);
Arrays.sort(arr);
3. 排序默认是从小到大
4. 若要是控制从大到小 则可以将循环反过来即
Arrays.sort(zi);
System.out.println("升序排序");
for(int i=0;i<=5;i++){
System.out.print(zi[i]);
}
System.out.println("\n降序排序");
for(int i=5;i>=0;i--){
System.out.print(zi[i]);
}
2.引用数据类型
import java.util.Scanner;
public class Demo2017080208 {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
System.out.println("请输入5位会员积分");
int fen[]=new int[5];
for(int i=0;i<=4;i++){
System.out.println("第"+(i+1)+"位会员积分");
fen[i]=input.nextInt();
}
for(int i=0;i<=fen.length-1;i++){
fen2[i]=fen[i]+500;
}
System.out.println("序号\t历史积分\t新年积分");
for(int i=0;i<=4;i++){
System.out.print((i+1)+"\t"+fen[i]+"\t"+fen2[i]+"\n");
}
}
}
3. 双重循环 各种形状的输出
public class Demo2017080210 {
public static void main(String[] args){
for(int i=0;i<=4;i++){
for(int j=0;j<=i;j++){
System.out.print("*");
}
System.out.print("\n");
}
}
}
public class Demo2017080210 {
public static void main(String[] args){
for(int i=1;i<=5;i++){
for(int j=1;j<=2*i-1;j++){
System.out.print("*");
}
System.out.print("\n");
}
}
}
public class Demo2017080209 {
public static void main(String[] args){
int n;
for(int i=1;i<=5;i++){
for(n=i;n<=5;n++){
System.out.print(" ");
}
for(int j=1;j<=2*i-1;j++){
System.out.print("*");
}
System.out.print("\n");
}
}
}
import java.util.Scanner;
public class Demo2017080301 {
public static void main(String[] args){
System.out.println("请输入行数");
Scanner input=new Scanner(System.in);
int c=input.nextInt();
for(int i=1;i<=c;i++){
for(int n=i-1;n<=c;n++){
System.out.print(" ");
}
for(int j=1;j<=2*i-1;j++){
System.out.print("*");
}
System.out.print("\n");
}
for(int i=c+1;i>=1;i--){
for(int n=i-1;n<=c;n++){
System.out.print(" ");
}
for(int j=1;j<=2*i-1;j++){
System.out.print("*");
}
System.out.print("\n");
}
}
}
练习买衣服
import java.util.Scanner;
public class Demo2017080304 {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
int num=0;
for(int i=1;i<=5;i++){
System.out.println("欢迎光临第"+i+"店");
for(int j=1;j<=3;j++){
System.out.println("要离开吗?Y/N");
String go=input.next();
if(go.equals("y")){
System.out.println("离店结账");
break;
}
System.out.println("买了一件衣服");
num++;
}
}
System.out.println("买了"+num+"件衣服");
}
}
冒泡排序(每次确认最后一个数字)
import java.util.Scanner;
public class Demo2017080303 {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
System.out.println("请输入数组5个");
int num[]=new int[5];
for(int n=0;n<=4;n++){
num[n]=input.nextInt();
}
for(int i=1;i<5;i++){
for(int j=0;j<5-i;j++){
if(num[j]>num[j+1]){
int t=num[j];
num[j]=num[j+1];
num[j+1]=t;
}
}
for(int j=0;j<=4;j++){
System.out.print(num[j]+"\t");
}
System.out.println();
}
}
}
选择排序(每次确认第一个数字)
import java.util.Scanner;
public class Demo2017080305 {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
int num[]=new int[6];
System.out.println("请输入6个数");
for(int i=0;i<=5;i++){
num[i]=input.nextInt();
}
for(int i=0;i<=4;i++){
for(int j=i+1;j<=5;j++){
if(num[i]>num[j]){
int temp=num[i];
num[i]=num[j];
num[j]=temp;
}
}
for(int n=0;n<=5;n++){
System.out.print(num[n]);
}
System.out.println();
}
}
}
昨日回顾练习
import java.util.Scanner;
public class Demo2017080201 {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
double a[]=new double[5];
for(int i=0;i<=4;i++){
System.out.print("请输入"+(i+1)+"商品价格");
a[i]=input.nextDouble();
}
System.out.println("商品\t金额");
for(int i=0;i<=4;i++){
System.out.println((i+1)+"\t"+a[i]);
}
}
}