------- android培训、java培训、java学习型技术博客、待与您交流! ----------
数组
◆数组的遍历:
列题: ↓↓
package Jichu;
//程序功能 定义一个功能 打印数组中的元素、中间用,号隔开
public class ShuZuDemo1 {
public static void main(String[] args) {
int[] arr = {3,5,6,7,8,9,12};
ShuZu(arr); //进行调用
}
public static void ShuZu(int[]arr) //定义函数
{
System.out.print("["); //为了美观给程序添加 一个中括号
for(int x=0; x<arr.length;x++) //获取元素个数进行输出
{
if(x!=arr.length-1) //进行最后一个数据不加逗号处理
System.out.print(arr[x]+", ");
else {
System.out.print(arr[x]+"]");
}
}
}
}
◆数组的排序
列选择排序:↓↓
package Jichu;
/*
*
* 程序功能 选择排序的操作
*
*
* */
//选择排序的特点、每进行一次排序最值出现在头角标位置上
public class PaixuDemo1 {
/**
* @param args
*/
public static void main(String[] args)
{
int[] arr = {5,1,6,4,2,8,9};
//排序前;
printArray(arr);
//排序
xzpx(arr);
//排序后:
printArray(arr);
}
public static void printArray(int[] arr) //定义一个函数
{
System.out.print("[");
for(int x=0; x<arr.length; x++) //获取元素进行输出
{
if(x!=arr.length-1) //进行最后一个数据不加逗号处理
System.out.print(arr[x]+", ");
else
System.out.println(arr[x]+"]");
}
}
public static void xzpx(int[]arr)
{
for(int x=0;x<arr.length;x++) //获取角标的元素
{
for(int y=x+1;y<arr.length;y++)
{
if(arr[x]>arr[y])//用0角标的元素去和内循环的角标相比较
{
int temp = arr[x]; //用一个变量记录相比较数组的最大值
arr[x]=arr[y]; //由于进行了大小比较所以进行位置互换
arr[y]=temp; //进行位置互换
}
}
}
}
}
冒泡排序:↓
package Jichu;
public class PaiXuDemo2 {
/**
* @param args
*/
public static void main(String[] args) {
int[] arr = {5,1,6,4,2,8,9};
//排序前;
printArray(arr);
//排序
mp(arr);
//排序后:
printArray(arr);
}
public static void printArray(int[] arr) //定义一个函数
{
System.out.print("[");
for(int x=0; x<arr.length; x++) //获取元素进行输出
{
if(x!=arr.length-1) //进行最后一个数据不加逗号处理
System.out.print(arr[x]+", ");
else
System.out.println(arr[x]+"]");
}
}
public static void mp(int[]arr)
{
for(int x=0; x<arr.length-1;x++)
{
for(int y=0; y<arr.length-x-1;y++)//-x 每一次比较元素减少 -1避免角标越界
{
if(arr[y]<arr[y+1])
{
int temp = arr[y];
arr [y] =arr[y+1];
arr[y+1]=temp;
}
}
}
}
}
列题:各个进制间的转换
package Jichu;
public class jizhizhuanhuan2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
toBin(-6); // 十进制转二进制的结果
toba(0); //十进制转八进制 的结果
toHex(60); //十进制转换成十六进制的结果
}
// 十进制转二进制
public static void toBin(int num) //定义一个方法
{
jz(num,1,1);
}
//十进制转八进制
public static void toba(int num) //定义一个方法
{
jz(num,7,3);
}
//十进制转换成十六进制
public static void toHex(int num) //定义一个方法
{
jz(num,15,4);
}
public static void jz(int num,int y,int p)//与上的数 y 偏移位 p
{
if (num ==0);
{
System.out.print("该进制的值为0");
}
char [] ch ={'0','1','2','3','4' //建立一个表
,'5','6','7','8'
,'9','A','B','C'
,'D','E','F'};
char []arr = new char[32]; //定义一个容器
int post = arr.length; //定义一个操作数组的指针
while(num!=0)
{
int temp = num & y;
arr[--post] = ch[temp];
num = num >>>p; //进行位移
}
for(int x=post;x<arr.length;x++)
{
System.out.print(arr[x]);
}
System.out.println();
}
}
------- android培训、java培训、java学习型技术博客、待与您交流! ----------