• 数组课堂作业


    动手动脑

    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);

    }

    }

  • 相关阅读:
    算法53----换钱的最小次数和方法数【动态规划】
    算法52-----矩阵最小路径【动态规划】
    Data
    Git
    Git
    Git
    Git
    DevOps
    Docker
    Tools
  • 原文地址:https://www.cnblogs.com/zhanghengstdu/p/6035705.html
Copyright © 2020-2023  润新知