java中java int数组转stringint[] num = new int[]{3,2,7,5,9,1};实现从大到小冒泡排序

以下试题来自:
单项选择题在Java语言中有如下数组定义,则数组a共有多少个元素(
int a[][]=new int[3][];
a[0]=new int[4];
a[1]=new int[5];
a[2]=new int[2];A.11 B.12C.15 D.不能这样定义
为您推荐的考试题库
你可能感兴趣的试题
1A.语句① B.语句②C.语句③ D.语句④2A.出错 B.0paramC.100param D.程序不错,但没有信息输出3A.-5 B.-1C.5 D.34A.5 B.6C.10 D.出错5A.019.5 B.1e0C.1e1 D.1e
热门相关试卷
最新相关试卷2、往数组int array[] = {1,2,3,4,5,6,7}第3个位置插入一个数8,最后的结果应该为{1,2,3,8,4,5,6,7}
采用循环(未使用 API)
public static void main(String[] args) {
* 2、往数组int array[] = {1,2,3,4,5,6,7}
* 第3个位置插入一个数8,最后的结果应该为{1,2,3,8,4,5,6,7}
int array[] = {1,2,3,4,5,6,7};
int arr[] = new int[array.length+1];
Scanner sc = new Scanner(System.in);
System.out.print(&请输入要插入的整数:&);
int number = sc.nextInt();
for (int i = 0; i & array. i++) {
arr[i] = array[i];
for (int i = arr.length-1; i &=4; i--) {
int temp = arr[i];
arr[i] = arr[i-1];
arr[i-1] =
arr[i-1] =
for(int i = 0; i & arr. i++){
System.out.println(arr[i]);
利用集合的方式:
public static void main(String[] args) {
ArrayList&Integer& list = new ArrayList&&();
int array[] = {1,2,3,4,5,6,7};
list.add(array);
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
list.add(6);
list.add(7);
System.out.println(list);
ArrayList list2 = new ArrayList();
list2.add(8);
list.addAll(3, list2);
list.add(3, 8);
System.out.println(list);
//遍历方法一:
for (int i = 0; i & list.size(); i++) {
Object obj = list.get(i);
System.out.print(obj + &, &);
System.out.println();
//遍历方法二:
for (Object object : list) {
System.out.print(object + &, &);
System.out.println();
//遍历方法三:
Iterator it = list.iterator();
while(it.hasNext()){
Object obj = it.next();
System.out.print(obj + &, &);
System.out.println();君,已阅读到文档的结尾了呢~~
[最新]第2-2章
Java基础-数组基础,数组,基本,第22章,二章数组,第二章,Java,java,Java新,第2章
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
[最新]第2-2章
Java基础-数组
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口基础学习day04---数组的操作_Java教程_动态网站制作指南
基础学习day04---数组的操作
来源:人气:162
一、数组基本常见操作
1.1、静态初始化
//第一种声明
//第一种声明
int [] arr=new int[5];
//第二种声明
int [] arr1=new int[]{5,3,8,1,9,11};
int [] arr2={5,3,8,1,9,11};
1.2、常见问题
//声明数组
int [] array=new int[3];
System.out.intln(array[3]);
//最在元素下标为2,发生异常 数组下标越界
Exception in thread "main" .lang.ArrayIndexOutOfBoundsException: 3
//声明数组
int [] array=new int[3];
array=null;
//将数组设置为null
System.out.println(array[1]);
//数组为空,发生空指针异常
Exception in thread "main" java.lang.NullPointerException
package com.day04;
* 数组的遍历
* @author Administrator
public class ArrayDemo1 {
public static void main(String[] args) {
//声明数组
int [] array={5,8,1,2,6};
for(int i=0;i&array.i++){
System.out.println("array["+i+"]="+array[i]);
array[0]=5
array[1]=8
array[2]=1
array[3]=2
array[4]=6
1.4、获取数组元素的值
package com.pb.demo1;
import java.util.S
* 输入5个学生的成绩,并求出最高分,最低分,平均分
public class Demo5 {
public static void main(String[] args) {
//声明一个扫描器类似的变量
Scanner input = new Scanner(System.in);
//声明整形数组
int [] scores=new int [5];
System.out.println("请输入5个学生的成绩:成绩为整数");
//为数组赋值
for (int i = 0; i & scores. i++) {
scores[i]=input.nextInt();
float sum=0;
int min=0;
int max=0;
float avg=0;
//将第一个值赋为min和max,进行比较
min=scores[0];
max=scores[0];
for (int i = 0; i & scores. i++) {
sum=sum+scores[i];
if(scores[i] & min){
min=scores[i];
if(scores[i]&max){
max=scores[i];
System.out.println("总成绩:"+sum);
System.out.println("最低分:"+min);
System.out.println("最高低:"+max);
System.out.println("平均分:"+sum/scores.length);
另一种 :用于打印数组中的元素,元素间用逗号隔开
package com.day04;
* 定义功能,用于打印数组中的元素,元素间用逗号隔开
* @author Denny
public class ArrayDemo2 {
public static void main(String[] args) {
//声明数组
int [] arr={3,6,8,1,9,2,68,98,83};
printArray(arr);
//定义方法实现用于打印数组中的元素,元素间用逗号隔开
public static void printArray(int [] arr){
for(int x=0;x&arr.x++){
System.out.print("{"+arr[x]+",");
}else if(x==arr.length-1){
System.out.print(arr[x]+"}");
System.out.print(arr[x]+",");
{3,6,8,1,9,2,68,98,83}
2.1、冒泡排序
package com.day04;
* 冒泡排序
* @author Denny
public class ArrayDemo4 {
public static void main(String[] args) {
int[] arr = { 5, 3, 1, 8, 4, 9, 11, 7 };
System.out.println("=======排序前======");
printArray(arr);
System.out.println("\n=======排序后======");
bubbleSorte(arr); // 排序
printArray(arr);
// 冒泡排序
public static void bubbleSorte(int[] arr) {
// 开始排序
for (int x = 0; x & arr.length - 1; x++) {
for (int y = 0; y & arr.length - x - 1; y++) {
// 开始比较
if (arr[y] & arr[y + 1]) { // 交换
int tmp = arr[y];
arr[y] = arr[y + 1];
arr[y + 1] =
// 遍历数组
public static void printArray(int[] arr) {
System.out.print("[");
for (int i = 0; i & arr. i++) {
if (i != arr.length - 1) {
System.out.print(arr[i] + ",");
System.out.print(arr[i] + "]");
=======排序前======[5,3,1,8,4,9,11,7]=======排序后======[1,3,4,5,7,8,9,11]
2.2、选择排序
package com.day04;
* 选择排序
* @author Denny
public class ArrayDemo5 {
public static void main(String[] args) {
int[] arr = { 5, 3, 1, 8, 4, 9, 11 ,7};
System.out.println("=======排序前======");
printArray(arr);
System.out.println("\n=======排序后======");
selectSort(arr);
printArray(arr);
// 选择排序
public static void selectSort(int[] arry) {
for (int i = 0; i & arry.length - 1; i++) {
for (int j = i + 1; j & arry. j++) {
if (arry[i] & arry[j]) {
int tmp = arry[i];
arry[i] = arry[j];
// 遍历数组
public static void printArray(int[] arr) {
System.out.print("[");
for (int i = 0; i & arr. i++) {
if(i!=arr.length-1){
System.out.print(arr[i] + ",");
System.out.print(arr[i] + "]");
=======排序前======[5,3,1,8,4,9,11,7]=======排序后======[1,3,4,5,7,8,9,11]
2.3、二分法排序
package com.day04;
import java.util.A
* 二分法查找
* @author Denny
public class ArrayDemo6 {
public static void main(String[] args) {
int[] arr = { 1,3,4,5,7,8,9,11};
//int index=getIndex(arr,11);
//使用Arrays.sort排序
Arrays.sort(arr);
//1,3,4,5,7,8,9,11
//二分法查找
//int index=halftSearch(arr,33);
int index=halftSearch_2(arr,9);
System.out.println("查找的index="+index);
//二分法查找,前题,要排序过的数组
public static int halftSearch(int [] arr,int key){
//最小下标
int min=0;
//最大下标
int max=arr.length-1;
//中间下标
int mid=(min+max)/2;
while(arr[mid]!=key){
if(key&arr[mid]){
min=mid+1;
}else if(key&arr[mid]){
max=mid-1;
//重新计算中间值下标
mid=(min+max)/2;
if(min&max){
return -1;
//二分法查找,前题,要排序过的数组第二种写法
public static int halftSearch_2(int [] arr,int key){
//最小下标
int min=0;
//最大下标
int max=arr.length-1;
//中间下标
while(min&=max){
//重新计算中间值下标
mid=(min+max)&&1;
if(key&arr[mid]){
min=mid+1;
}else if(key&arr[mid]){
max=mid-1;
return -1;
//遍历查找
public static int getIndex(int[] arr,int key){
int index=-1;
//定义-1下标
for (int i = 0; i & arr. i++) {
if(key==arr[i]){
return//返回下标变量
package com.day04;
* 有一个有序的数组,想要将一个元素插入到这个数组中, 还要保证这个数组是有序的
* @author Denny 1.二分法查找到下标
public class ArrayDemo7 {
public static void main(String[] args) {
int arr[] = { 2, 4, 5, 7, 19, 32, 45 };
int index=getIndex(arr,35);
System.out.println("index="+index);
//二分法查找,返回能插入的下标
public static int getIndex(int[] arr, int key) {
int min = 0, max = arr.length - 1,
while (min &= max) {
// 中间下标
mid = (min + max) && 1;
if (key & arr[mid]) {
min = mid + 1;
} else if (key & arr[mid]) {
max = mid - 1;
3.1、十进制-二进制和十六进制
package com.day04;
public class ArrayTest1 {
public static void main(String[] args) {
toHex(60);
* 十进制转换十六进制
public static void toHex(int num) {
StringBuffer sb = new StringBuffer();
for (int x = 0; x & 8; x++) {
int tmp = num & 15;
if (tmp & 9) {
//System.out.println((char) (tmp - 10 + 'A'));
sb.append((char) (tmp - 10 + 'A'));
//System.out.println(tmp);
sb.append(tmp);
num=num&&&4;
System.out.println(sb.reverse());
* 十进制转换为二进制
public static void toBin(int num) {
StringBuffer sb = new StringBuffer();
while (num & 0) {
// System.out.println(num % 2);
sb.append(num % 2);
System.out.println(sb.reverse());
3.2、查表法
package com.day04;
public class ArrayTest2 {
public static void main(String[] args) {
toHex(60);
* 0 1 2 3 4 5 6 7 8 9 A B C D E F --十六进制 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
* 15 -----数组下标 查表法:将所有的元素临时存储起来,建立对应关系 每一次,&15后的值作为索引去查建立好的表,就可以找到对应的元素
* 这样比-10+'A'简单 这个表怎么建立? 可以通过数组的形式来定义 结果是反着的,想要正过来可以通过StringBuffer reerse功能
* 可以使用数组来完成
public static void toHex(int num) {
// 十六进制数组
char[] ch = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
// 定义临时容器数组
char[] arr = new char[8];
int pos=arr.//下标
while (num != 0) {
int tmp = num & 15;
// System.out.println(ch[tmp]);
arr[--pos] = ch[tmp];
num = num &&& 4;
System.out.println("post="+pos);
// 遍历输出
for (int i = i &arr. i++) {
System.out.print(arr[i] + " ");
查表法十进制转二进制
package com.day04;
* 十进制 转2进制
* @author Administrator
public class ArrayTest3 {
public static void main(String[] args) {
toBin(-6);
十进制 转2进制
public static void toBin(int num){
char [] ch={'0','1'}; //要查的表
//存储数组
char[] bin=new char[32];
//下标指针
int pos=bin.
while(num!=0){
int tmp=num&1;
bin[--pos]=ch[tmp];
num=num&&&1;
for (int i = i & bin. i++) {
System.out.print(bin[i]);
package com.day04;
* @author Denny
public class ArrayTest4 {
public static void main(String[] args) {
//toBin(-6);
toOtc(60);
//toHex(-60);
* 十进制---》二进制
public static void toBin(int num){
toTrans(num,1,1);
* 十进制---》八进制
public static void toOtc(int num){
toTrans(num,7,3);
* 十进制---》十六进制
public static void toHex(int num){
toTrans(num,15,4);
* 提供公有的转换方法 num 要转换的数 base与上的数如15,1,7, offset 移动的倍数
public static void toTrans(int num, int base, int offset) {
if(num==0){
System.out.println(num);
// 十六进制数组
char[] ch = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
// 存储转换后的数组
char[] arr = new char[32];
int pos = arr.
while (num != 0) {
int tmp = num &// 取
arr[--pos] = ch[tmp]; // 查表取相对应的字符
num = num &&& // 右移
//遍历输出
for (int i = i & arr. i++) {
System.out.print(arr[i]);
四、二维数组
4.1、二维数组定义
int[][] arr=new int [3]][2];
定义名称为arr的二维数组
二维数组中有3个一维数组
每个一维数组中有2个元素
一维数组名称分另为arr[0],arr[1],arr[2]
给第一个一维数组1下标标赋值78写法arr[0][1]=78;
int [][] arr=new int [3][];
二维数组中有3个一维数组
每一个一维数组的默认初始化值null
可以对这个三个一维数组分另进行初始化
arr[0]=new int [3]
arr[1]=new int [1]
arr[2]=new int [2]
4.2、练习和常用操作
package com.day04;
* 二维数组常用操作
* @author Denny
public class ArrayTest5 {
public static void main(String[] args) {
int [] [] arr={{3,5,7,8,1},{2,1,6},{5,7,9}};
printArr(arr);
* 二维数组遍历
public static void printArr(int [] [] array){
for (int i = 0; i & array. i++) {
for (int j = 0; j & array[i]. j++) {
System.out.print(array[i][j]+" ");
System.out.println();
优质网站模板

我要回帖

更多关于 java int数组 的文章

 

随机推荐