6.数组

知识点:1.定义一个数组并分配内存   int c[]=new int[12]   String b[]=new String[100]

直接定义数组 int n[]={10,20,30,40}

2.数组元素是基本类型,初始化为0。数组元素是引用类型,不能直接访问,使用之前必须先创建特定对象。

3.foreach访问数组:package chen;

               public class ArrayExample {

               public static void main(String args[])

                {

                  int n[]=new int[100];

                  for(int element:n)

              System.out.print(element);

                }

              }

4..arraycopy方法进行数组拷贝 System.arraycopy(a,m,bn,s) a数组复制到b数组,从a数组下标为m的元素开始复制s个元素,从b数组下标为n的元素开始粘贴

一.访问引用类型数组

  package chen;

public class ArrayExample {

public static void main(String args[])

{

MyClass arr[]=new MyClass[10];

arr[2].value=100;

}

}

class MyClass

{

public int value=1;

二运行PassArray.java小结

  按引用传递数组类型方法参数,如果方法中有代码更改了数组元素的值,原始的数据元素值也会更改。

  按值传递数组类型方法参数,方法中有代码更改了数据元素的值,原始数据元素值不会改变。

三.测试代码ArrayInRam

  

被赋值之后的数组长度改变。

四.WhatDoesThisDo  数组内元素求和

 

五.WhatDoesThisDo2  倒序输出数组内元素。

 

六.Array用法

  1.Arrays.equals(a,b) 比较a,b数组是否相等

  2.Arrays.toString(a)  输出数组a元素

  3.int b[]=Arrays.copyOf(a,n)  a数组复制给b数组,b数组中有n个元素

  4.Arrays.fill(a,m,n,x)  a数组的下标m的元素(包括)到下标n的元素(不包括)赋值为x

  5.Arrays.sort(a)  将数组a从小到大排序

七.编写程序将一个整数转换为汉字读法字符串(1123”转换为“一千一百二十三”)

  源代码:package chen;

import java.util.Scanner;

public class change {

public static void main(String args[])

{

Scanner s=new Scanner(System.in);

System.out.print("请输入数字:");

String number=s.next();

if("-1".equals(number)) System.out.print("错误请重新输入");   //输入数字为负数

new change().calculator(Integer.parseInt(number));

}

public void calculator(int number)

{

String str="";

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

String danwei[]={"","","","","","","","","亿"};

String result=String.valueOf(number);  //将输入数字转换为字符串

char s[]=result.toCharArray();  //将字符串分割为数组存放

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

{

int n=(int)s[i]-48;  //从字符型转换为整形

if(n!=0)

{

str+=num[n]+danwei[s.length-i-1];

}

else

{

str+=num[n];

}

}

System.out.print("转换为数字读法:"+str);

}

}

 

八.BigInteger能完成大数计算,可以用数组表达大数实现相同的功能。1.用大数类实现加和减两个功能2.阅读BigInteger类源码,弄清楚它是使用什么算法实现加减乘除四种运算的?3.通过互联网查找大数运算的相关资料,给你的大数类添加乘、除、求阶乘等其它功能。

源代码://20153250  陈欣容  大数的加减乘除      20153250

package chen;

import java.util.*;

import java.math.*;

public class Dashu {

public static void main(String args[])

{

Scanner s=new Scanner(System.in);

System.out.print("输入第一个大数:");

BigInteger a=s.nextBigInteger();

System.out.print("输入第二个大数:");

BigInteger b=s.nextBigInteger();

System.out.print("加法:");

System.out.print(a+"+"+b+"="+a.add(b)+" ");

System.out.print("减法:");

System.out.print(a+"-"+b+"="+a.subtract(b)+" ");

System.out.print("乘法:");

System.out.print(a+"*"+b+"="+a.multiply(b)+" ");

System.out.print("除法:");

System.out.print(a+"/"+b+"="+a.divide(b)+" ");

}

}

截图:

九.随机生成10个数,填充一个数组,用消息框显示数组内容,计算数组元素的和,结果也显示在消息框中。

 

      

  

设计思路:先创建一个长度为10的数组,在循环中产生随机数依次赋给数组内10个元素,在循环内将每次获得的随机数相加得到数组元素的和,最后在消息框显示。

源代码://20153250 陈欣容   信1503

package chen;

import javax.swing.*;

public class nine {

public static void main(String args[])

{

int sum=0;

int a[]=new int[10];    //创建长度为10的数组

String result="10100以内的随机数为: ";

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

{

a[i]=(int)(1+Math.random()*100);   //生成1100的随机数

sum+=a[i];     //计算数组元素的和

result+=" "+a[i]+" ";

}

result+="数组元素之和为:"+sum;

 JOptionPane.showMessageDialog(null,result,"结果",JOptionPane.INFORMATION_MESSAGE);

}

}

  截图:

  总结:消息框输出:JOptionPane.showMessageDialog(null,输出的变量,消息框标题”,JOptionPane.INFORMATION_MESSAGE)

     产生随机数方法:(int)(最小值+Math.random()*(最大值-最小值+1))  

  

原文地址:https://www.cnblogs.com/cxr0711/p/6035563.html