数组课堂作业

动手动脑

1、[Ljava.lang.Object;@2a139a55

;之前表示的数组类型,@之后的一串数字表示的是具体地址。

应该通过下标访问数组元素

2、数组元素的引用

引用传递数组元素时,会直接修改数组元素值,而值传递则是产生一个拷贝,并不会修改值

3、转换大写

package Array;

import javax.swing.*;

public class First {

public static void main(String[] args) {

// TODO 自动生成的方法存根

String as=JOptionPane.showInputDialog("输入数字");

double number=Double.parseDouble(as);

number=number*100;  

int n=0,num=(int)number; //分后全部舍弃

int array[]=new int[9];

for(int i=0;i<10;i++){

if(num==0)

break;

array[i]=num%10;

num=num/10;

n++;

}

String str[]={"","","","","","","","",""};

String str1[]={"","","","","","","","","",""};

for(int i=n-1;i>=0;i--){

System.out.print(str1[array[i]]);

System.out.print(str[i]);

}

}

}

4、大数字实现

加法运算

package Array;

import javax.swing.*;

public class Big {

public static void main(String[] args) {

// TODO 自动生成的方法存根

String num1=JOptionPane.showInputDialog("第一个数字");

String num2=JOptionPane.showInputDialog("第一个数字");

int nu1[]=new int[10];

int nu2[]=new int[10];

int nu3[]=new int[10];

int j=0;

for(int i=num1.length()-1;i>=0;i--){

nu1[j++]=num1.charAt(i)-'0';

}

j=0;

for(int i=num2.length()-1;i>=0;i--){

nu2[j++]=num2.charAt(i)-'0';

}

int next=0;

for(int i=0;i<nu1.length;i++){

nu3[i]=(nu1[i]+nu2[i]+next)%10;

next=(nu1[i]+nu2[i]+next)/10;

}

for(int i=nu3.length-1;i>=0;i--){

System.out.print(nu3[i]);

}

}

}

减法运算

package Array;

import javax.swing.*;

public class Big {

public static void main(String[] args) {

// TODO 自动生成的方法存根

String num1=JOptionPane.showInputDialog("第一个数字");

String num2=JOptionPane.showInputDialog("第一个数字");

int nu1[]=new int[10];

int nu2[]=new int[10];

int nu3[]=new int[10];

int j=0;

for(int i=num1.length()-1;i>=0;i--){

nu1[j++]=num1.charAt(i)-'0';

}

j=0;

for(int i=num2.length()-1;i>=0;i--){

nu2[j++]=num2.charAt(i)-'0';

}

//两数字比较大小

int flag=0;

for(int i=nu1.length-1;i>=0;i--){

if(nu1[i]>nu2[i]){

flag=1;break;//1表示1数字大

}

if(nu1[i]<nu2[i]){

flag=2;break;//2表示2数字大

}

}

int next=0;

if(flag==1){

for(int i=0;i<nu1.length;i++){

nu3[i]=nu1[i]-nu2[i]+next;

if(nu3[i]<0){

next=-1;

nu3[i]=nu3[i]+10;

}

else

next=0;

}

for(int i=nu3.length-1;i>=0;i--){

System.out.print(nu3[i]);

}}

if(flag==2){

for(int i=0;i<nu1.length;i++){

nu3[i]=nu2[i]-nu1[i]+next;

if(nu3[i]<0){

next=-1;

nu3[i]=nu3[i]+10;

}

else

next=0;

}

System.out.print("-");

for(int i=nu3.length-1;i>=0;i--){

System.out.print(nu3[i]);

}

if(flag==0){

System.out.println("0");

}}

}

}

//10个随机存取生成

package Array;

import javax.swing.*;

import java.util.*;

public class qwer {

public static void main(String[] args){

Random as=new Random();

int array[]=new int[10];

int num=0;

String str="随机数为:";

for(int i=0;i<10;i++){

//生成随机数

array[i]=as.nextInt();

str=str+' '+array[i];

num=num+array[i];

}

JTextArea text=new JTextArea(str);

JOptionPane.showConfirmDialog(null, text);

JOptionPane.showConfirmDialog(null, "总和为 "+num);

}

}

原文地址:https://www.cnblogs.com/zhanghengstdu/p/6035705.html